笔记摘自《算法图解》
数组用得很多因为它支持随机访问。有两种访问方式:随机访问和顺序访问。数组的读取速度更快因为它们支持随机访问。
选择排序
先编写一个用于找出数组中最小元素的函数:
def findSmallest(arr):smallest = arr[0]smallest_index = 0for i in range(1, len(arr)):if arr[i] < smallest:smallest = arr[i]smallest_index = ireturn smallest_index
根据findSmallest()这个函数来编写选择排序算法:
def selectionSort(arr):
newArr = []
for i in range(len(arr)):
smallest = findSmallest(arr)
newArr.append(arr.pop(smallest))
return newArr
print selectionSort([5, 3, 6, 2, 10]) // [2, 3, 5, 6, 10]
- 数组的读取速度很快。
- 链表的拆入和删除速度很快。
- 在同一个数组中,所有元素的类型都必须相同。
