del->pPrev->pNext = del->pNext;
del->pNext->pPrev = del->pPrev;
delete del;
----------------解决方案--------------------------------------------------------
不知道对不对
----------------解决方案--------------------------------------------------------
看错了,没注意第二点
----------------解决方案--------------------------------------------------------
想笑就笑 干吗那样,天天就知道笑[bc10]
----------------解决方案--------------------------------------------------------
有劳您费神还写一个程序,其实分析这个的时候,一般画个图把,比较直观;
Step0 = [n1]<->[n2/pDel]<->[n3] : 初始化
Step1 = [n1]->[n3], [n2]<-[n3] : pDel->pPrev->pNext = pDel->pNext;
Step2 = [n1/pDel]->[n3], [n2]<-[n3] : pDel = pDel->pPrev;
Step3 = Remove ==> ([n1/pDel]->[n3], [n2]<-[n3]) : delete pDel->pNext->pPrev;
Step4 = [pDel] <== ([n1/pDel]->[n3], [pDel]<-[n3])->[n3] : pDel = (pDel->pNext-pPrev = pDel)->pNext;
毕竟不是用笔画,可能有点难看懂
其中->表示后继结点,<-表示前驱结点
==> 表示操作施加(左边操作名,右边数据)
<== 数据传输
, 表示两个操作分割
----------------解决方案--------------------------------------------------------
老K乱来了,注意题目
----------------解决方案--------------------------------------------------------
del->pNext->pPrev = del->pPrev;
delete del;
----------------解决方案--------------------------------------------------------
不知道对不对
----------------解决方案--------------------------------------------------------
看错了,没注意第二点
----------------解决方案--------------------------------------------------------
想笑就笑 干吗那样,天天就知道笑[bc10]
----------------解决方案--------------------------------------------------------
[bo]以下是引用 [un]sunkaidong[/un] 在 2008-2-18 20:11 的发言:[/bo]
LZ你的答案也没错....xianshizhe111是个很好的朋友.互相学习.共同进步
我写了验证的小代码...
#include"stdio.h"
#include"malloc.h"
struct Node {
int i;
struct Node *pPrev;
struct Node *pNext;
};
ma ...
LZ你的答案也没错....xianshizhe111是个很好的朋友.互相学习.共同进步
我写了验证的小代码...
#include"stdio.h"
#include"malloc.h"
struct Node {
int i;
struct Node *pPrev;
struct Node *pNext;
};
ma ...
有劳您费神还写一个程序,其实分析这个的时候,一般画个图把,比较直观;
Step0 = [n1]<->[n2/pDel]<->[n3] : 初始化
Step1 = [n1]->[n3], [n2]<-[n3] : pDel->pPrev->pNext = pDel->pNext;
Step2 = [n1/pDel]->[n3], [n2]<-[n3] : pDel = pDel->pPrev;
Step3 = Remove ==> ([n1/pDel]->[n3], [n2]<-[n3]) : delete pDel->pNext->pPrev;
Step4 = [pDel] <== ([n1/pDel]->[n3], [pDel]<-[n3])->[n3] : pDel = (pDel->pNext-pPrev = pDel)->pNext;
毕竟不是用笔画,可能有点难看懂
其中->表示后继结点,<-表示前驱结点
==> 表示操作施加(左边操作名,右边数据)
<== 数据传输
, 表示两个操作分割
----------------解决方案--------------------------------------------------------
[bo]以下是引用 [un]Knocker[/un] 在 2008-2-18 20:16 的发言:[/bo]
del->pPrev->pNext = del->pNext;
del->pNext->pPrev = del->pPrev;
delete del;
del->pPrev->pNext = del->pNext;
del->pNext->pPrev = del->pPrev;
delete del;
老K乱来了,注意题目
----------------解决方案--------------------------------------------------------