博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LeetCode] Remove Nth Node From End of List
阅读量:5214 次
发布时间:2019-06-14

本文共 1409 字,大约阅读时间需要 4 分钟。

Given a linked list, remove the nth node from the end of list and return its head.

For example,

Given linked list: 1->2->3->4->5, and n = 2.   After removing the second node from the end, the linked list becomes 1->2->3->5.

Note:

Given n will always be valid.
Try to do this in one pass.

依然是双指针思想,两个指针相隔n-1,每次两个指针向后一步,当后面一个指针没有后继了,前面一个指针就是要删除的节点。

1 /** 2  * Definition for singly-linked list. 3  * struct ListNode { 4  *     int val; 5  *     ListNode *next; 6  *     ListNode(int x) : val(x), next(NULL) {} 7  * }; 8  */ 9 class Solution {10 public:11     ListNode *removeNthFromEnd(ListNode *head, int n) {12         // Start typing your C/C++ solution below13         // DO NOT write int main() function14         if (head == NULL)15             return NULL;16             17         ListNode *pPre = NULL;18         ListNode *p = head;19         ListNode *q = head;20         for(int i = 0; i < n - 1; i++)21             q = q->next;22             23         while(q->next)24         {25             pPre = p;26             p = p->next;27             q = q->next;28         }29         30         if (pPre == NULL)31         {32             head = p->next;33             delete p;34         }35         else36         {37             pPre->next = p->next;38             delete p;39         }40         41         return head;42     }43 };

转载于:https://www.cnblogs.com/chkkch/archive/2012/11/14/2770033.html

你可能感兴趣的文章
压缩图片 待验证
查看>>
UIImage 和 iOS 图片压缩UIImage / UIImageVIew
查看>>
MongoDB的数据库、集合的基本操作
查看>>
ajax向后台传递数组
查看>>
疯狂JAVA16课之对象与内存控制
查看>>
[转载]树、森林和二叉树的转换
查看>>
WPF移动Window窗体(鼠标点击左键移动窗体自定义行为)
查看>>
软件测试-----Graph Coverage作业
查看>>
django ORM创建数据库方法
查看>>
创建Oracle synonym 详解
查看>>
php7 新特性整理
查看>>
RabbitMQ、Redis、Memcache、SQLAlchemy
查看>>
linux查看端口占用
查看>>
hdu - 1226 超级密码 (bfs)
查看>>
Qt重写paintEvent方法遇到的问题
查看>>
Sql常见面试题 受用了
查看>>
知识不是来炫耀的,而是来分享的-----现在的人们却…似乎开始变味了…
查看>>
CSS背景颜色、背景图片、平铺、定位、固定
查看>>
口胡:[HNOI2011]数学作业
查看>>
我的第一个python web开发框架(29)——定制ORM(五)
查看>>