数据结构2.2 线性表的插入和删除
插入代码
void insert(List Ptrl,int x,int i){//i是插入的位置,X是插入的数字 int k=0; //只考虑了表格未满的条件。 for(k=MAXSIZE-1;k>=i-1;k--){ //要考虑数组序号和位置之间差1 Ptrl->data[k+1]=Ptrl->data[k]; } Ptrl->data[i]=x; Ptrl->last++;//最后一位加一。 }
时间复杂度:O(n)
删除代码:
void delete(List Ptrl,int i){//i为删除位置
int k;
for(k=i-1;k<MAXSIZE-1;k++){MAXSIZE为数组容量
Ptrl->data[k]=Ptrl->data[k+1];
}
Ptrl->last--;
}
删除原理:
posted on 2022-06-24 13:02 dragonraje 阅读(159) 评论(0) 编辑 收藏 举报