社区
C语言
帖子详情
链表末尾增加一个节点的操作。
SadPerson
2003-07-24 04:14:15
写一个函数,完成在链表末尾增加一个节点的操作。
函数原型为:
Node * AddNode(Node *head,int newDate);
其中,链表节点的定义如下:
struct Node{
int data;
Node * next;
}
...全文
704
10
打赏
收藏
链表末尾增加一个节点的操作。
写一个函数,完成在链表末尾增加一个节点的操作。 函数原型为: Node * AddNode(Node *head,int newDate); 其中,链表节点的定义如下: struct Node{ int data; Node * next; }
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zoezinsser
2003-07-25
打赏
举报
回复
停了!
不要这样,一片天空,弄脏了!
jackywangsen
2003-07-25
打赏
举报
回复
刚贴的有点问题,改正如下:
Node * AddNode(Node *head,int newDate){
Node *p=(Node *)malloc(sizeof(Node));
Node *s=head;
while(s->next){//应该是对指针域进行判断,前面的搞错了,改正
s=s->next;
}
p->data=newDate;
p->next=NULL;
s->next=p;
return p;
}
jackywangsen
2003-07-25
打赏
举报
回复
#include "stdio.h"
typedef struct Node{
int data;
struct Node * next;
}Node;
Node * AddNode(Node *head,int newDate){
Node *p=(Node *)malloc(sizeof(Node));
Node *s=head;
while(s){
s=s->next;
}
p->data=newDate;
p->next=NULL;
s->next=p;
return p;
}
main(){
getch();
}
bigtea
2003-07-24
打赏
举报
回复
假设楼主的原链表为无头结点的单链表,则
Node * AddNode(Node *head,int newDate)
{
struct Node * p, * q;
p=head;
while(p->next!=NULL) p=p->next;
if (q=(Node * )malloc(sizeof(Node)) exit (0);
p->next=q;
q->data=newDate;
q->next=NULL;
return head;
}
youngmean
2003-07-24
打赏
举报
回复
先进先出的队列式链表:
{
struct Node* p,* tail;
p=head;
if(!p)
printf("error");
else
{
while(p->next)
p=p->next;
tail=p;//tail记录最后一个结点
p=(struct Node*) malloc(sizeof(struct Node));
p->next=tail->next;
tail->next=p;
}
}
shailiavia
2003-07-24
打赏
举报
回复
Node * AddNode(Node *head,int newDate);//head为头指针
{ Node *p=NULL,*q=NULL; //p用于找到链表最后一个节点,q用于生成新节点
p=head;
while(p->next) p=p->next; //p的后继不空,顺着链表往后走
q=Node* (malloc(sizeof(Node));
q->next=NULL;
q->data=newData;
p->next=q;
}
//head所指链表即为所需链表
loneststar
2003-07-24
打赏
举报
回复
哎,错了。订正如下
Node * AddNode(Node *head,int newDate)
{
Node *p=head;
if(head) {
while (p->next) p=p->next;
p->next=new Node;
p=p->next;
p->next=NULL;
p->data=newData;
};
else {
head = new Node;
head->next=NULL;
head->data=newData;
p = head;
};
return p;
}
loneststar
2003-07-24
打赏
举报
回复
完整一点的 :)
Node * AddNode(Node *head,int newDate)
{
Node *p=head;
if(head) {
while (p->next) p=p->next;
p->next=new Node;
p=p->next;
p->next=NULL;
p->data=newData;
};
else {
head = new Node;
head->next=NULL;
head->data=newData;
p = head->next;
};
return p;
}
ckp
2003-07-24
打赏
举报
回复
楼上的实现函数可能有错,现改正如下:
实现函数
{
Node *p=head;
if(head) {
while (p->next) p=p->next;
p->next=new Node;
p=p->next;
p->next=NULL;
p->data=newData;
};
else {
head = new Node;
head->next=NULL;
head->data=newData;
};
}
listart
2003-07-24
打赏
举报
回复
实现函数
{
Node *p=head;
while (p) p=p->next;
p->next=new Node;
p=p->next;
p->next=NULL;
p->data=newData;
}
双向
链表
增删查
操作
本文详细介绍了
链表
的基本
操作
,包括如何初始化
链表
,如何在
末尾
增加
和删除
节点
,以及如何输出所有
节点
。在
增加
节点
时,会检查
链表
是否已满,找到最后
一个
节点
进行插入。删除
节点
则需要遍历找到
末尾
节点
并进行移除。输出所有
节点
通过遍历整个
链表
实现,直至找到最后
一个
节点
为止。
链表
test
本文介绍了
一个
简单的单
链表
实现,包括
增加
、删除及排序等基本
操作
。通过示例代码展示了如何创建
链表
节点
、在
链表
末尾
添加元素,并使用选择排序算法对
链表
进行排序。
链表
:在
链表
的
末尾
添加
一个
节点
+删除
链表
中值为value的
节点
本文介绍了
链表
这一动态数据结构,并详细阐述了如何在
链表
末尾
添加新
节点
以及如何删除
链表
中值为特定值的
节点
。
C++中在
链表
末尾
增加
一个
结点
本文介绍了一种在
链表
中尾部添加
节点
的方法。通过使用指针遍历到
链表
末尾
,并将新创建的
节点
附加在
末尾
,实现了在
链表
尾部插入元素的功能。文中还解释了为何在某些情况下需要使用二级指针来更新头指针。
链表
节点
的
增加
和删除
这篇博客介绍了如何在
链表
中
增加
和删除
节点
。`addToTail` 函数通过指针的指针来更新
链表
,当
链表
为空时,新
节点
成为头
节点
;否则,遍历找到
链表
尾部添加新
节点
。`removeNode` 函数处理了删除指定值
节点
的情况,包括删除头
节点
和
链表
中间或
末尾
的
节点
。
C语言
70,039
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章