leetcode 之Remove Nth Node From End of List(19)
生活随笔
收集整理的這篇文章主要介紹了
leetcode 之Remove Nth Node From End of List(19)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
這題比較簡單,方法有很多。其中一種比較有意思的做法是設置兩個指針,一個先走n步,然后再一起走。一個到了末尾,另一個也就確定了要刪除元素的位置。
ListNode *removeNthFromEnd(ListNode *head, int n) { ListNode dummy{-1, head}; ListNode *p = &dummy, *q = &dummy; for (int i = 0; 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; } View Code?
轉載于:https://www.cnblogs.com/573177885qq/p/5508566.html
總結
以上是生活随笔為你收集整理的leetcode 之Remove Nth Node From End of List(19)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据库学习3 Distinct Grou
- 下一篇: DWZ与百度编辑器的IE8以下上传图片兼