Chi tiết
Viết hàm hoặc chương trình, cho một mảng (hoặc danh sách), chỉ chứa số nguyên, trả về hoặc xuất ra một mảng với tất cả các thành phần phụ được đảo ngược. Nghĩa là, đảo ngược tất cả các phần tử của mảng sâu nhất, sau đó sâu nhất thứ hai, v.v. Không cần chỉ định kích thước, nhưng chức năng hoặc chương trình phải hoạt động cho các mảng lởm chởm trong định dạng gốc của ngôn ngữ lập trình của bạn.
Ví dụ
Điều này:
[[1,2], [3,4]]
Sẽ trở thành thế này:
[[4,3], [2,1]]
Điều này:
[[[ 1, 2, 3], [ 4, 5, 6], [ 7, 8, 9]],
[[10,11,12], [13,14,15], [16,17,18]],
[[19,20,21], [22,23,24], [25,26,27]],
[[28,29,30], [31,32,33], [34,35,36]],
[[37,38,39], [40,41,42], [43,44,45]],
[[46,47,48], [49,50,51], [52,53,54]]]
Sẽ trở thành thế này:
[[[54,53,52], [51,50,49], [48,47,46]],
[[45,44,43], [42,41,40], [39,38,37]],
[[36,35,34], [33,32,31], [30,29,28]],
[[27,26,25], [24,23,22], [21,20,19]],
[[18,17,16], [15,14,13], [12,11,10]],
[[ 9, 8, 7], [ 6, 5, 4], [ 3, 2, 1]]]
Điều này:
[[[1,2]],
[[3,4], [5]],
[[6,7,8], [9], [10,11]],
[[[12,13], [14,15]], [16], [17,18,19,20]],
[21]]
Sẽ trở thành thế này:
[[21],
[[20,19,18,17], [16], [[15,14], [13,12]]],
[[11,10], [9], [8,7,6]],
[[5], [4,3]],
[[2,1]]]
Tặng kem
Điều này hy vọng sẽ khuyến khích câu trả lời trong một số ngôn ngữ lập trình hướng đối tượng ...
-50% Bytecount Nếu chương trình của bạn có thể lấy đầu vào là một mảng (hoặc danh sách) với các loại thành viên khác nhau (chúng có thể ở dạng đối tượng) và đảo ngược thành công tất cả các mảng.
Điều này:
[["Foo",["Bar",1]],
2,
["Baz"],
[[["Qux"],3],3.14]]
Sẽ trở thành thế này:
[[3.14,[3,["Qux"]]],
["Baz"],
2,
[[1,"Bar"],"Foo"]]