大家好,欢迎来到IT知识分享网。
数据结构问题:循环双链表有一个循环双链表,每个节点由两个指针(r
我来解答吧:
void delnode(dlist *p)
dlist *q,*r;
q=p;———1
while(q->right!=p) q=q->right;———2
r=p;———3
while(r->left!=p) r=r->left;———4
q->right=r;———5
r->left=q;———6
free(p);———7
程序正确性:
这个程序是有正确的
2,3 : 让q向右转,直到p的左边,所以 q=p->left
4,5 : 同理,让r向左转,直到p的右边,所以 r=p->right
5,6,7 : 这3句不用再说了吧。
数据结构问题:循环双链表有一个循环双链表,每个节点由两个指针(r
我来解答吧:
void delnode(dlist *p)
dlist *q,*r;
q=p;———1
while(q->right!=p) q=q->right;———2
r=p;———3
while(r->left!=p) r=r->left;———4
q->right=r;———5
r->left=q;———6
free(p);———7
程序正确性:
这个程序是有正确的
2,3 : 让q向右转,直到p的左边,所以 q=p->left
4,5 : 同理,让r向左转,直到p的右边,所以 r=p->right
5,6,7 : 这3句不用再说了吧。
C++ DLIST
你这个是完成对双向链表的生成和输出但是里面有些问题,是你手敲的吧
#include
#include
#include
#include
struct lnode
int data;
lnode *llink,*rlink;
};//定义一个结构体,一个整形数据和两个指向结构体的指针
typedef struct lnode *lptr;//声明一个指向结构体的指针类型
class dlist:public lnode//声明dlist这个类公有继承这个结构体
public:
lptr p,q,s,t;
int x,y;
lptr first;//定义类的成员变量
public:
lptr createlist() //定义创建链表的方法,返回lptr类型
first=NULL; //初始first为NULL
cin>>x>>y;//输入整型数据
p=(lptr)malloc(sizeof(struct lnode));//动态分配结构体内存空间,地址返回给p
q=(lptr)malloc(sizeof(struct lnode));//动态分配结构体内存空间,地址返回给q
p->data=x;//为p所指向的结构体的数据域赋值
q->data=y;//为q所指向的结构体数据域赋值
p->llink=NULL;//p所指向的结构体的左指针为NULL
p->rlink=q;//p所指向的结构体的右指针指向q
q->llink=p;//q所指向的结构体的左指针为p
q->rlink=NULL;//q所指向的结构体的右指针为空
first=p;//把p赋给first
retrun(first);//返回first
void display(lptr first) //输出函数
t=first;
while(t->rlink!=NULL)//把first赋给t,当t的右指针不为NULL时,输出它的数据,同时t向右移动
cout
t=t->rlink;
cout
void main()
lptr first=NULL;//初始first为NULL
clrscr(); //清屏
dlist obj; //定义dlist的对象obj
first=obj.createlist();//调用这个对象的创建双向链表方法
obj.display(first);//输出
getche(); //这个是用来暂停的,感觉没什么用
}同问。。。
这首英文歌叫什么名?女生唱的。
Better In TimeLeona lewis
lewis – Better In Time
Leona lewis – Better In Time
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/144208.html