标题:线性表中逆位序创建链表与顺序创建链表的原理解释。。真心求教?
只看楼主
飞飞飞不动
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-9-23
结帖率:100%
已结贴  问题点数:20 回复次数:2 
线性表中逆位序创建链表与顺序创建链表的原理解释。。真心求教?
  void initlistn(lnode *&head,int n){
      initlist(head);     //调用空表  
      lnode *p;
      for(int i=0;i<n;i++){
          p=new  lnode;
          cin>>p->data;
          p->next=head->next;
          head->next=p;
        }
 }
    这是一个逆位序创建的链表函数,但是我不懂什么叫逆位序?以及 p->next=head->next;  head->next=p;这两句的含义。希望大神具体给个解释!
</n;i++){
      





void initlistn(lnode *&head,int n){
      initlist(head);     //调用空表  
      lnode *p=head,*s;
      for(int i=0;i<n;i++){
          s=new lnode;
          cin>>s->data;
          s->next=NULL;
          p->next=s;
          p=s;
       }
 }


这是顺序的链表,依然不懂  s->next=NULL;  p->next=s;   p=s;这几句的含义,求指教。谢了!
</n;i++){

搜索更多相关主题的帖子: 线性表 next 
2012-09-23 20:46
世界模型
Rank: 4
等 级:业余侠客
威 望:1
帖 子:240
专家分:226
注 册:2010-9-12
得分:20 
回复 楼主 飞飞飞不动
/*尾插法 建立单链表*/
{
....
    s->data=ch;
    s->next=p;//将节点p插入单链表
    p=s;//指针后移
}
  s->next=NULL;//将最后节点(终端节点) 指针域置空
2012-09-23 23:23
zhu224039
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:862
专家分:792
注 册:2012-7-29
得分:0 
   head为头 的话  如果是逆位序的话  那么新创建的节点  的next 指向 head  新建立的节点 成为新的head节点  重复这个过程
   如果是顺序的话 ,这个你应该是理解的

[ 本帖最后由 zhu224039 于 2012-9-26 23:20 编辑 ]

我要成为嘿嘿的黑客,替天行道
2012-09-26 22:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-381958-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.238122 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved