入力
配列または正の連続した昇順整数を含むことができる配列。配列には、その中に任意の数の配列を含めることができます。空の配列はありません。
出力
簡素化されたこの配列
配列を単純化する方法
[1, [2, 3], [[4]], [[[5, 6], 7, [[[8]]]], 9]]
例として配列を使用します。
最初に、値のネストの深さを確認します。深度とそれらの深度での数値は次のとおりです。
0 1
1 2 3 9
2 4 7
3 5 6
5 8
出力配列は、元の配列の数値を取得し、ネストの深さでグループ化してから、要素の元の深さの深さでグループをネストすることで構築します。数字を昇順と深さで並べます。
したがって、出力は [1, [2, 3, 9], [[4, 7]], [[[5, 6]]], [[[[[8]]]]]]
例
[1, [2, 3], [[4]], [[[5, 6], 7, [[[8]]]], 9]] -> [1, [2, 3, 9], [[4, 7]], [[[5, 6]]], [[[[[8]]]]]]
[[[1]], [2, [3]], 4, [5, [6, [7, [8], [9, [[10]]]]]]] -> [4, [2, 5], [[1, 3, 6]], [[[7]]], [[[[8, 9]]]], [[[[[[10]]]]]]]
[1] -> [1]
[1, [2], [[3]], [[[4]]], [[[[5]]]]] -> [1, [2], [[3]], [[[4]]], [[[[5]]]]]
[1, [[[[2], 3]]] [[4]]] -> [1, [[4]], [[[3]]], [[[[2]]]]]
8
行に1つのブラケットペアがありませんSo, our output is.....
。ただし、サンプルスニペットで修正しました。
[1, [2, 3, 9], [[4, 7]], [[[5, 6]]], [[[[]]]], [[[[[8]]]]]]
ませんか?