## 线性表总结

1. 代码段1简介:顺序表的头删

1.1. 代码1

{ //1
int i; //2
assert(pSeq != NULL); //3
if(pSeq->sz >= MAX) //4
{ //5
printf("顺序表已满,无法添加!\n"); //6
return; //7
} //8
for(i=pSeq->sz ;i>0 ;i--) //9
{ //10
pSeq->data[i] = pSeq->data[i-1]; //11
} //12
pSeq->data[i] = d; //13
pSeq->sz++; //14
} //15

2. 不懂得地方

第9行到第11行,为什么i从最大自减,这样不会把前一个的数据覆盖掉吗。问题:语法不懂。

2. 代码段1简介:查找单链表中第i个元素,若存在,其值赋给e并返回OK,否则返回ERROR。

2.1 代码1

Status GetElem_L(LinkList L,int i,ElemType &e)
{
LNode *p1; //1
p1=L->next; //2
int j=1; //3
while(p1 && j<i) //4
{ //5
p1 = p1->next; //6
++j; //7
} //8
if(!p1 || j>i) //9
{ //10
return ERROR; //11
e=p1->data; //12
return OK; //13
}

2.2 不懂得地方

第7行,++j 能不能换成 j++?问题:语法不懂。

猜你喜欢

转载自www.cnblogs.com/xyz-8108923246/p/10593228.html