例如:如果我有一个二维数组阵列可以平铺多少次?
arr = [[1,2], [4,5], [7,5], 8]
输出应为1,因为它可以被压平一次。 如果我有一维数组
arr = [1,3,4]
输出应该是0,因为它不能被压平。
我应该使用什么函数?
例如:如果我有一个二维数组阵列可以平铺多少次?
arr = [[1,2], [4,5], [7,5], 8]
输出应为1,因为它可以被压平一次。 如果我有一维数组
arr = [1,3,4]
输出应该是0,因为它不能被压平。
我应该使用什么函数?
使用递归:
def depth(arr):
if isinstance(arr, list):
return 1 + max(depth(elem) for elem in arr)
else:
return 0
简单列表的深度应为'0',此外请不要让某人做作业。 –
可能是一个好主意来引用你的[源](https://stackoverflow.com/a/6039153/7954504)@PacoH –
我实际上是自己写的,但我可以看到你如何得出这个结论。 –
一个你自己写......如果列表中有不同的嵌套级别是什么,例如'[1,[2,[3,4],5],6]'。 –
什么是你的输入数组的最大深度? – RomanPerekhrest
@WillemVanOnsem如果是这样的话,请遵循最高嵌套层次 –