顺序表
顺序表就是将元素放入一个连续的内存空间里,它的优点是可以快速访问,缺点是插入和删除操作时间复杂度高
建立
|
初始化
void init(node& a) |
初始化有两点要注意的地方,第一点是用了传引用,第二点是动态分配内存,这就表示如果使用完了要delete
查找
int find(node& a,int x) |
插入
插入操作是把一个数插入第i位,其他位顺序后移
如果插入某一位概率相同,那么在第0位插入需要移动n个数,第一位插入需要移动n-1个数……在第n位插入需要移动0个数,总共有n-1中可能,总共需要移动的次数为n(n+1)/2,所以平均需要移动次数为n/2
int insert(node& a,int x,int i) |
删除
与上面操作类似,这里需要前移,并且平均操作次数为(n-1)/2
int Delete(node& a,int i) |
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment