主题:一个关于数据结构的问题,答者给分
wu93547211
[专家分:0] 发布于 2007-05-30 10:52:00
在双向链中为什么
一个指针的前驱的后继是它本身而不它前驱的前驱:
如d是指向某个结点的指针有:d->next->prior = d->prior->next = d
而不是:d->next->prior = d->next->next
回复列表 (共5个回复)
沙发
jxstudying [专家分:280] 发布于 2007-05-31 13:24:00
一个结点的前驱的后继本来就是它本身。
d->prior->next = d 把该结点赋给其前驱的后继,也就是该接点。
d->next->prior = d 也是把该接点的后继的前驱指向它,而在双链表中就是这样的。
d->next->prior = d->next->next
这是把d所指接点的后继的前驱指向d结点的后继的后继。
不知道你是在进行插入操作还是在删除??
板凳
ghxyydx [专家分:450] 发布于 2007-06-01 19:23:00
你说的有点乱,还是不明白你在说什么?
3 楼
programfangucj [专家分:30] 发布于 2007-06-02 16:03:00
结点的前驱是->prior 后继就是->next
不是楼主想的:按照箭头方向可以随便用next。那岂不是全乱套了。
结点的前驱是->prior 后继就是->next 是肯定了的。
给分哈!
[em2][em2][em2]
4 楼
bpttc [专家分:8790] 发布于 2007-06-02 16:56:00
很简单 大家按一排站好
你左边的右边是谁?
你右边的左边是谁?
5 楼
wang_renlong [专家分:20] 发布于 2007-06-02 19:14:00
[quote]很简单 大家按一排站好
你左边的右边是谁?
你右边的左边是谁?[/quote]
这个解释应该很明白了吧!
你要是还不理解的话,那你最好画俩三个节点出来,并把它们之间的对应关系标出来!
那你应该就能理解了!
我给你画了,但是不会上传
我来回复