面试题——递增间隔分割列表

Posted super尚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试题——递增间隔分割列表相关的知识,希望对你有一定的参考价值。

题目:

编写函数get_list,入参为一个列表L,将列表按照1、2、3、4…等递增间隔来进行分割,返回分割后的二维数组

思路:

  • 由于添加的列表是一个不规则的,所以不能简单使用reshape来直接修改形状,这里使用append来添加到新的列表。

  • 具体操作就是:创建一个新的列表,每次append一个递增序列的小列表。

  • 具体处理方法就是使用一个idx来每次定位下一个要append的位置,使用varlen来进行append大小的调整。

代码:

# 给定列表
listA = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']

# 声明空白的新列表
res = []


def convert(listA):
    idx = 0
    for var_len in range(1, len(listA)):

        if idx+var_len >= len(listA):
            break
        res.append(listA[idx: idx + var_len])
        idx += var_len
convert(listA)
print(res)

代码只简单测试了一下,有问题欢迎评论区交流~

以上是关于面试题——递增间隔分割列表的主要内容,如果未能解决你的问题,请参考以下文章

前端面试题之手写promise

为了去小米面试准备的算法题:求递增数组中相加等于10的元素对

JS面试题--使用for循环打印1-10,每个数字出现的间隔约500ms

[剑指offer]面试题17:合并两个排序的链表

python 面试题

链表题 面试题02.04. 分割链表290. 单词规律20. 有效的括号