📅  最后修改于: 2023-12-03 15:39:49.387000             🧑  作者: Mango
当我们需要将一个数组按顺序重新排列,以便按最小、最大、第二个最小、第二个最大等顺序排列时,我们可以使用下面的算法。
def rearrange(arr):
n = len(arr)
arr.sort()
result = [0] * n
leftIndex = 0
rightIndex = n - 1
for i in range(n):
if i % 2 == 0:
result[i] = arr[leftIndex]
leftIndex += 1
else:
result[i] = arr[rightIndex]
rightIndex -= 1
return result
original_array = [1,2,3,4,5,6,7,8,9]
result_array = rearrange(original_array)
print(result_array)
[1, 9, 2, 8, 3, 7, 4, 6, 5]
以上就是按顺序重新排列阵列-最小、最大、第二个最小、第二个最大的算法及其实现。