超易题,快来抢分呀!!!

时间:2022-08-31 20:16:19
若有一个单链表如下: 
┌─┬─┐    ┌─┬─┐p→ ┌─┬─┐       ┌─┬─┐    ┌─┬─┐
│ A│─│─→│B │─│─→│C │─│→...→│Y │─│─→│Z │^ │  
└─┴─┘    └─┴─┘    └─┴─┘       └─┴─┘    └─┴─┘
   其中 A , B , C , ... , Y , Z 为数值数据o 由于使用不当等原因,指向
链表第一个结点指针 H 丢失,现要在指针 P 所指结点前插入一个数据为 T 的
结点 g , 如何实现 ? 

11 个解决方案

#1


无法实现。
单向链表没了头,就没什么好玩的了。

#2


随便插入一个节点 nodeNew, 
然后p指向 nodeNew->next
不久满足题目要求了嘛 ^__^

#3


但包含A,B的头上2个节点是完了,没法再找回.

#4


我想了半天也不知道怎么把A,B两个结点保留,大虾们快出主意呀,

#5


呵呵,这个啊。
当前节点指针为p,
ListNode *s;
s->next = p->next;
p->next = s;
ElemType temp = p->data;
p->data = T;
s->data = temp;
即后插一个结点,然后交换两结点的数据。

#6


A,B结点还想保留?这个,只怕是没希望了。

#7


双向连表到是比较容易..

#8


单链表无法实现。“小鱼儿猜想”^_^

#9


壮士断腕!!!因为前面节点无论如何也找不回了,就把p当成头节点吧,以后的插入删除就简单啦,嘎嘎

#10


我看也只有采用阿呆的办法了,大家可有异议呀?

#11


阿呆不呆哦:)

#1


无法实现。
单向链表没了头,就没什么好玩的了。

#2


随便插入一个节点 nodeNew, 
然后p指向 nodeNew->next
不久满足题目要求了嘛 ^__^

#3


但包含A,B的头上2个节点是完了,没法再找回.

#4


我想了半天也不知道怎么把A,B两个结点保留,大虾们快出主意呀,

#5


呵呵,这个啊。
当前节点指针为p,
ListNode *s;
s->next = p->next;
p->next = s;
ElemType temp = p->data;
p->data = T;
s->data = temp;
即后插一个结点,然后交换两结点的数据。

#6


A,B结点还想保留?这个,只怕是没希望了。

#7


双向连表到是比较容易..

#8


单链表无法实现。“小鱼儿猜想”^_^

#9


壮士断腕!!!因为前面节点无论如何也找不回了,就把p当成头节点吧,以后的插入删除就简单啦,嘎嘎

#10


我看也只有采用阿呆的办法了,大家可有异议呀?

#11


阿呆不呆哦:)