题目

删掉链表倒数第n 个节点

思路

设置两个指针, cur1, cur2. 让cur2 先走n步, 然后cur1, cur2再同时往下走, 知道cur2达到链表末尾

总结

  1. 考虑边界情况, 当删除的是头结点时, cur2应该会越界, 通过判断cur2的位置返回head->next
  2. 第一次提交时判断条件都设为了if(cur2) or if(!cur), 忘了c++中NULL和false是不一样的
  3. cur1->next = cur1->next->next

BTW

大二上数据结构的时候老师就讲过这么一道题, 说是研究生入学考试的的一道题, 而能够完美做出来的人却很少. 这道题印象很深, 并且当初老师都不确定cur1->next = cur1->next->next 能否这么用.

大二时, 真是什么都不懂呢, 毕竟18岁

相关文章:

  • 2022-02-24
  • 2021-11-15
  • 2022-12-23
  • 2022-12-23
  • 2021-08-02
猜你喜欢
  • 2021-09-07
  • 2021-10-27
  • 2021-11-14
  • 2021-07-11
  • 2022-02-24
  • 2021-09-15
  • 2022-02-16
相关资源
相似解决方案