顺序表 | 顺序栈 | 顺序队列 | |
插入 | 1.(满表 i-1<0 (i-1>L->length) 不插入, 2.i<=L->length,先空出位置再插入, 3.长度++ | 栈满,不插入 S->top++; S->data[S->top]=e; | 队列满,不插入 Q->data[Q->rear]= e; Q->rear=(Q->rear+1)%MAXSIZE; |
删除 | 1.(空表 i-1<0 (i-1)>(L->length-1)不删除, 2.i<=L->length,先保存数据再删除, 3.长度-- | 空栈,不删除 *e = S->data[S->top];/* 将要删除的栈顶元素赋值给e */ S->top--; | 队列空,不插入 *e = Q->data[Q->front]; Q->front=(Q->front+1)%MAXSIZE; |
输出 | for(i=0;i<L.length;i++) { printf("%d ",L.data[i]); } | int i=0; while(i<=S.top) { printf("%d ",S.data[i]); i++; } | i=Q.front; while((i+Q.front)!=Q.rear) { printf("%d ",Q.data[i]); i=(i+1)%MAXSIZE; } |
顺序表顺序栈顺序队列的插入删除
最新推荐文章于 2023-02-27 00:38:00 发布