|
珞珈山水BBS →
电脑网络 →
程序人生 →
单文区文章阅读
|
| 单文区文章阅读 [返回] |
|---|
|
发信人: kittig (Never & Ever), 信区: Programm 标 题: Re: 求助:关于C数据结构单连表就地逆置 发信站: BBS 珞珈山水站 (Thu Apr 28 11:21:15 2005) typedef struct/*定义顺序堆栈*/ { struct slnode Stack[maxnum]; (要求在数组里面存放单连表的地址) int Top; }qstype; void converse(slnodetype *la) { slnodetype *p; qstype *q; q->Top=0; ~~~~~~~~q是指针,这里不可以这么赋值。 if(q->Top>=maxnum-1) { printf("\n 堆栈已满\n"); } p=la; while(p->Next!=NULL) { q->Stack[q->Top]=p->Next; q->Top++; p=p->Next; } p=la; while(q->Top>0) { p->Next=q->Stack[q->Top]; p=p->Next; q->Top--; } p->Next=NULL; } ------------------- void converse(slnodetype *(&la)) { slnodetype *p, *q, *r; if (la==NULL || la->next==NULL) return; r = la; q = la->next; while(q!=NULL) { p = q->next; q ->next = r; r = q; q = p; } la = r; } 对指针类型的引用不知道那个*和&是什么顺序了。 -- ※ 来源:·珞珈山水BBS站 http://bbs.whu.edu.cn·[FROM: 219.140.84.*] |
| [返回单文区目录] |
|
|