| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1108 人关注过本帖
标题:数据结构链表问题
只看楼主 加入收藏
gaoxiaoyijia
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2009-5-13
结帖率:100%
收藏
 问题点数:0 回复次数:7 
数据结构链表问题
//单链表的结点类型
typedef struct LNode
{
    int data;
    struct LNode *next;
} LNode,*LinkList;


以下为链表输出   
LinkList p,r;
for(int i=0;i<length;i++)
    {
        scanf("%d",&x);
        p=(LinkList)malloc(sizeof(LNode));
        p->data=x;
        r->next=p;
        r=p;
    }

其中 p->data=x;
        r->next=p;
        r=p;
怎么实现的
搜索更多相关主题的帖子: 链表 数据结构 
2010-03-20 10:02
观月
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-3-20
收藏
得分:0 
这是一个建表的结构,每次循环就会产生一个存放x单表,r应该是一个头指针,然后把p赋给r的next域,使r->next指向p,最后p的位置被r取代,这样就产生了链表结构,依次循环就可产生一个长度为length链表,不过在循环结束后还应返回一个头指针,
不知说的清不清楚
2010-03-20 16:23
shaojie519
Rank: 2
等 级:论坛游民
帖 子:12
专家分:21
注 册:2009-7-31
收藏
得分:0 
恩,就是这样
2010-03-20 18:42
showboat2009
Rank: 2
等 级:论坛游民
帖 子:16
专家分:19
注 册:2010-3-11
收藏
得分:0 
        p->data=x;
        r->next=p;
        r=p;
   
   循环体应该是这样执行的:首先给结点的数据域赋值x,再使r的指针域指向p结点,接着将p结点赋给r结点,如此循环。最后应该还有  return(head)   
2010-03-28 18:24
许苏娟
Rank: 1
等 级:新手上路
威 望:1
帖 子:40
专家分:9
注 册:2010-4-3
收藏
得分:0 
r头指针,r=p,头指针后移,这样才能一直循环下去
2010-04-09 16:59
liuzhiping
Rank: 2
等 级:论坛游民
帖 子:19
专家分:31
注 册:2009-7-8
收藏
得分:0 
p=(LinkList)malloc(sizeof(LNode));
        p->data=x;
        r->next=p;
        r=p;
最好在p->data=x;下面加上p->next = NULL;
2010-04-16 18:09
qq8801103
Rank: 5Rank: 5
来 自:苏州中科大软件学院
等 级:职业侠客
威 望:1
帖 子:422
专家分:340
注 册:2009-10-8
收藏
得分:0 
2楼的不错

Discuz!  
好好学习  天天向上
2010-04-17 22:14
流星1046
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-4-20
收藏
得分:0 
这是个建表的过程,先给结点p申请空间。将p的数值域赋值为x,头结点r的指针域指向结点p,再把结点p赋值给头结点r,使头结点向后移一位。依次循环,完成建表。
2010-04-20 19:11
快速回复:数据结构链表问题
数据加载中...
 
   



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

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