你可以使用sorted()
函數來對數組進行排序,并使用enumerate()
函數來獲取每個元素的索引。這樣可以得到一個排序后的元素列表和對應的索引列表。
以下是一個例子:
arr = [5, 2, 7, 1, 9]
sorted_arr = sorted(enumerate(arr), key=lambda x: x[1])
sorted_indices = [index for index, _ in sorted_arr]
print(sorted_indices) # 輸出: [3, 1, 0, 2, 4]
在這個例子中,sorted()
函數會根據數組arr
的值對其進行排序,返回一個元組的列表,其中每個元組包含元素的索引和對應的值。然后,我們使用key=lambda x: x[1]
來指定排序的依據是元組中的第二個元素(值)。最后,通過enumerate()
函數獲取了排序后的元素列表,并使用一個列表推導式[index for index, _ in sorted_arr]
取出了排序后的索引列表。