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++?问题:语法不懂。