阵列可以平整多少次?

时间:2017-10-09 15:27:59

标签: arrays

例如:如果我有一个二维数组

arr = [[1,2], [4,5], [7,5], 8]

输出应为1,因为它可以变平一次。 如果我有一个数组

arr = [1,3,4]

输出应为0,因为它不能展平。

我应该使用什么功能?

1 个答案:

答案 0 :(得分:1)

使用递归:

def depth(arr):
    if isinstance(arr, list):
        return 1 + max(depth(elem) for elem in arr)
    else:
        return 0