这题比较简单,方法有很多。其中一种比较有意思的做法是设置两个指针,一个先走n步,然后再一起走。一个到了末尾,另一个也就确定了要删除元素的位置。

ListNode *removeNthFromEnd(ListNode *head, int n) {
ListNode dummy{-, head};
ListNode *p = &dummy, *q = &dummy;
for (int i = ; i < n; i++) // q 先走 n 步
q = q->next;
while(q->next) { // 一起走
p = p->next;
q = q->next;
}
ListNode *tmp = p->next;
p->next = p->next->next;
delete tmp;
return dummy.next;
}

最新文章

  1. php注册审核
  2. nodejs学习之events的使用
  3. Tips11:用[Rang]来限制Inspector中的变量
  4. html插入链接
  5. psutil
  6. Cocos2dx游戏源码合集(BY懒骨头+持续更新+2014.02.21)
  7. ###学习《C++ Primer》- 4
  8. 回击MLAA:NVIDIA FXAA抗锯齿性能实測、画质对照
  9. 《sed的流艺术之三》-linux命令五分钟系列之二十三
  10. C语言编程时常犯十八个错误
  11. 记忆2--记忆的&quot;记&quot;和&quot;忆&quot;
  12. ping时不知道ping那个Ip的解决办法
  13. ButterKnife使用小结
  14. codeforces #262 DIV2 C称号Present(二分法+贪婪)
  15. Redis:在windows环境安装Redis
  16. 1.熟悉Java基本类库系列 - 目录
  17. IIS环境下部署项目
  18. Git reset到某一次commit
  19. Vue.js-05:第五章 - 计算属性与监听器
  20. Git&#160;常用命令及操作总结

热门文章

  1. Android Canvas 绘图
  2. BZOJ4337:[BJOI2015]树的同构——题解
  3. ArrayList动态扩容机制
  4. X day4
  5. Flex 布局教程:实例篇【转】
  6. UVA10600:ACM Contest and Blackout(次小生成树)
  7. mysql 常用总结
  8. syslog大小限制
  9. &lt;audio&gt;标签HTML5音乐播放器
  10. 10.nginx+ffmpeg上搭建HLS切片