搜索
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ [讨论]如何交换链表中的两个结构元素
标题:
[讨论]如何交换链表中的两个结构元素
只看楼主
handsome303
等 级:
新手上路
帖 子:25
专家分:0
注 册:2006-2-28
楼主
问题点数:0 回复次数:7
[讨论]如何交换链表中的两个结构元素
大家说说看,交流想法!
[此贴子已经被作者于2006-6-28 2:07:14编辑过]
搜索更多相关主题的帖子:
链表
元素
结构
交流
2006-06-28 01:39
song4
等 级:
贵宾
威 望:
38
帖 子:1533
专家分:4
注 册:2006-3-25
第
2
楼
得分:0
什么想法
直接
temp=first;
first=second;
second=temp;
嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-06-28 08:26
handsome303
等 级:
新手上路
帖 子:25
专家分:0
注 册:2006-2-28
第
3
楼
得分:0
song4哥,这样好像是地址交换 ,实际的链表顺序并没有发生变化啊!first前面的元素仍然指向first原来的地址,即交换后的second地址啊!是不是?不知道有没有错。
2006-06-28 09:33
song4
等 级:
贵宾
威 望:
38
帖 子:1533
专家分:4
注 册:2006-3-25
第
4
楼
得分:0
我这个是内容拷贝啊
嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-06-29 10:34
handsome303
等 级:
新手上路
帖 子:25
专家分:0
注 册:2006-2-28
第
5
楼
得分:0
如果对链表排序,内容拷贝不太好吧,那应该用什么方法啊?
2006-06-29 17:02
片风
等 级:
新手上路
帖 子:6
专家分:0
注 册:2005-11-24
第
6
楼
得分:0
temp=*first;
*first=*second;
*second=temp;
这个呢?
2006-06-29 18:15
song4
等 级:
贵宾
威 望:
38
帖 子:1533
专家分:4
注 册:2006-3-25
第
7
楼
得分:0
有什么不好?
你不是只对他的信息关心么
除非你对下面用地址操作
嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-06-30 09:36
aogun
等 级:
贵宾
威 望:
17
帖 子:638
专家分:0
注 册:2006-4-5
第
8
楼
得分:0
一般用改变链接的方法,假如要交还ptr1节点和ptr2节点的位置,如果链表是单向的,那么直接把ptr1前一个节点的next指针指向ptr2,而ptr1的next指针指向ptr2的下一个节点,再把ptr2的next指针指向ptr1,如:
链表顺序:ptr0->ptr1->ptr2->ptr3
现在要交换ptr1和ptr2
ptr0->next = ptr2;
ptr1->next = ptr2->next;
ptr2->next = ptr1;
如果链表是双向的,那么还要修改pre指针
如果你们学过数据结构就会清楚了,这是数据结构中的基础知识
世界上总共有 10 种人,一种懂得什么是二进制 ,一种不懂。
2006-06-30 09:55
8
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-75300-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.273573 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved