apple
世上本无事,庸人自扰之!
C++博客
|
首页
|
发新随笔
|
发新文章
|
联系
|
聚合
|
管理
随笔:25 文章:0 评论:4 引用:0
循环双链表----数据结构复习
/**/
/*
循环双链表
*/
#include
<
iostream
>
using
namespace
std;
struct
Node
{
int
data;
Node
*
next;
Node
*
prior;
}
;
class
CycleDLList
{
private
:
Node
*
first;
public
:
CycleDLList();
void
InsertNode(
int
data);
void
DeleteNode(
int
data);
void
PrintAll();
}
;
CycleDLList::CycleDLList()
{
first
->
prior
=
first;
first
->
next
=
first;
}
void
CycleDLList::InsertNode(
int
data)
{
Node
*
s
=
new
Node();
s
->
data
=
data;
Node
*
p
=
first
->
next;
while
(p
->
next
!=
first)
{
p
=
p
->
next;
}
s
->
prior
=
p;
s
->
next
=
p
->
next;
p
->
next
->
prior
=
s;
p
->
next
=
s;
}
void
CycleDLList::DeleteNode(
int
data)
{
Node
*
p
=
first
->
next;
Node
*
q;
while
(p
!=
first)
{
if
(p
->
data
==
data)
break
;
q
=
p;
p
=
p
->
next;
}
if
(p
!=
first)
{
q
->
next
=
p
->
next;
p
->
next
->
prior
=
q;
delete p;
}
}
void
CycleDLList:: PrintAll()
{
Node
*
p
=
first
->
next;
Node
*
q
=
first
->
prior;
cout
<<
"
p=p->next
"
<<
endl;
while
(p
!=
first)
{
cout
<<
p
->
data
<<
"
"
;
p
=
p
->
next;
}
cout
<<
endl;
cout
<<
"
q=q->prior
"
<<
endl;
while
(q
!=
first)
{
cout
<<
q
->
data
<<
"
"
;
q
=
q
->
prior;
}
}
int
main()
{
CycleDLList
*
cd
=
new
CycleDLList();
cd
->
InsertNode(
5
);
cd
->
InsertNode(
4
);
cd
->
InsertNode(
3
);
cd
->
InsertNode(
2
);
cd
->
PrintAll();
cd
->
DeleteNode(
2
);
cd
->
PrintAll();
}
发表于 2010-08-12 20:36
文殊广法
阅读(325)
评论(0)
编辑
收藏
引用
所属分类:
C++
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
回文
有序多项式相加-------------数据结构复习
循环双链表----数据结构复习
循环单链表----复习数据结构
简单题::斐波那契数列
循环移位
回文数字的判断
简单链队列
简单顺序栈
简单单链表
网站导航:
博客园
IT新闻
BlogJava
知识库
博问
管理
<
2008年8月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔分类
API学习(3)
(rss)
C++(11)
(rss)
home
(rss)
JAVA(2)
(rss)
stl learning(2)
(rss)
VC++(2)
(rss)
编程疑问(1)
(rss)
数据库编程(2)
(rss)
随笔档案
2010年8月 (4)
2009年10月 (1)
2009年5月 (2)
2009年4月 (8)
2008年9月 (5)
2008年8月 (5)
搜索
最新评论
1. re: 简单链栈 执行为什么会有这样有问题呢?
析构函数不对 top==NULL的时候你还delete了
--沈臻豪(foxtail)
2. re: 循环移位
不要用递归啦 用循环做
--沈臻豪(foxtail)
3. re: 简单顺序表
@YG
呵呵,谢谢,更改过来啦,
--明王不动
4. re: 奇怪 Get()函数怎么调用不到呢?
你的length都没有赋值。
--YG
阅读排行榜
1. 绘图API 画笔,画线(805)
2. 画直方图(642)
3. 简单顺序表(640)
4. 循环移位(624)
5. 绘图API 画刷(623)
评论排行榜
1. 简单顺序表(2)
2. 简单链栈 执行为什么会有这样有问题呢?(1)
3. 循环移位(1)
4. 简单题::斐波那契数列(0)
5. vb dao (0)