链表:链表是数据结构之一,其中的数据呈线性排列。在链表中元素可以储存在内存的任何地方,而且链表上一个元素都储存了下一个元素的地址,进而使一系列随机的内存地址串在一起。
数组:数组 (Array),就是把有限个数据类型一样的元素按顺序放在一起,用一个变量命名,然后通过编号可以按顺序访问指定位置的元素的一个有序集合。 其实简单来说,就是为了方便而把这些元素放在一起。
优点 | 缺点 | |
链表 | 查找效率高 | 插入效率低 |
数组 | 查找效率低 | 插入效率高 |
链表和数组运行时间对比
数组 | 链表 | |
读取 | O(1) | O(n) |
插入 | O(n) | O(1) |
删除 | O(n) | O(1) |
1.创建一个数组
students = ["张三", "李四", "王二"]
2.创建一个列表
#1
list1=[]
print(list1)
#2
a=list()
print(a)
选择排序:
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。运行时间为O(n^2)。
选择排序代码实现
list1=[1,3,5,7,7]
for i in range(len(list1)):
m=i
for j in range(i+1,len(lst1)):
if lst1[j]<lst1[m]:
m=j
list1[i],list1[m]=list1[m],list1[i]
print(list1)
参考:1.1《图解算法》
1.2参考选择排序算法(python实现)