面试题——递增间隔分割列表
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)
代码只简单测试了一下,有问题欢迎评论区交流~
以上是关于面试题——递增间隔分割列表的主要内容,如果未能解决你的问题,请参考以下文章
为了去小米面试准备的算法题:求递增数组中相加等于10的元素对