发布网友 发布时间:2024-10-24 03:55
共1个回答
热心网友 时间:22小时前
解这道题有很多办法,给你说个思路吧,有了思路相信程序你自己就能写了。
(假设你是按A→Z的顺序,下一个去掉的是D)
创建双向链表,每个节点储蓄A→Z个字母,并且每个节点链接到下一个节点(pNext)和上一个节点(pLast)。Z节点的pNext链接到A。
这样你就得到了一个类似由字母A→Z构成的圆环。
用循环来遍历这个链表,每隔两个节点,就执行pLast->pNext=pNext;pNext->pLast=pLast; 当pLast=pNext时结束循环;由于只有剩下一个节点时才可能发生pLast=pNext,所以最后那个就是你要的那个了。
大体核心思路就这样了。相信你能够自己写出程序。
当然这道题还有其他比这种更好的思路等着你去发掘。