题目:将一个数组逆序,如[9, 6, 5]逆序后[5, 6, 9]。

程序分析:用数组第一个数与最后一个数交换,第二个数与倒数第二个数交换,以此类推。

假设数组长a的度为N,a[0]与a[N-1-0]交换,a[1]与a[N-1-1]交换,a[2]与a[N-1-2]交换,得到a[i]与a[N-1-i]交换,总共交换N/2次。

程序源代码:

实例(Python 2.0+)

#!/usr/bin/python

# -*- coding: UTF-8 -*-

if __name__ == '__main__':

   a = [7,6,3,4,1]

   N = len(a)

   print a

   for i in range(len(a) / 2):

       a[i],a[N - 1 - i] = a[N - 1 - i],a[i]

   print a

以上实例输出结果为:

[7, 6, 3, 4, 1]

[1, 4, 3, 6, 7]