一个简单的功能,把一个数组的全部数据反向(逆向)反转,比如,现在数组中的数据顺序为:
[1,2,3,4,5],要求把数组中数据全部反转为[5,4,3,2,1]
python实现 :
def app():
data = []
for i in range(10):
data.append(i)
print('交换前', data)
i = 0
j = len(data) - 1
while (i < j):
# if i > j:
# break
t = data[i]
data[i] = data[j]
data[j] = t
i = i + 1
j = j - 1
print('交换后', data)
if __name__ == '__main__':
app()
原理是用两个游标(i,j),i指向最左边的数据,j指向最右边的数据,交换array[i]和array[j],然后每一轮循环,i加1,j减1,继续交换,直到游标i越界超过j。
运行输出:
交换前 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
交换后 [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]