leetcode 之Remove Nth Node From End of List(19)
2023-09-14 08:57:33 时间
这题比较简单,方法有很多。其中一种比较有意思的做法是设置两个指针,一个先走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; }
相关文章
- Java实现 LeetCode 789 逃脱阻碍者(曼哈顿距离)
- Java实现 LeetCode 674 最长连续递增序列(暴力)
- Java实现 LeetCode 638 大礼包(阅读理解题,DFS)
- Java实现 LeetCode 606 根据二叉树创建字符串(遍历树)
- Java实现 LeetCode 433 最小基因变化
- Java实现 LeetCode 354 俄罗斯套娃信封问题
- Java实现 LeetCode 98 验证二叉搜索树
- Java实现 LeetCode 73 矩阵置零
- (LeetCode 82)Remove Duplicates from Sorted List II
- (LeetCode 86)Partition List
- LeetCode:114_Flatten Binary Tree to Linked List | 将一棵二叉树变成链表的形式 | Medium
- (LeetCode 86)Partition List
- (LeetCode 92)Reverse Linked List II
- [LeetCode] Sort List
- LeetCode(107): 二叉树的层次遍历 II
- json串 转 list<class> 方法 List转JSONArray和JSONArray转List String 转List
- leetcode 题解 || Remove Nth Node From End of List 问题
- Leetcode 999. 可以被一步捕获的棋子数
- Leetcode 172. 阶乘后的零
- [LeetCode] 206. Reverse Linked List ☆(反转链表)
- 【leetcode】sort list(python)
- leetcode dfs Flatten Binary Tree to Linked List
- Sort List[leetcode] 由归并排序的递归和循环,到本题的两种解法
- leetcode - Reverse Linked List II
- LeetCode之Sort List
- leetcode - Convert Sorted List to Binary Search Tree
- leetcode 206. Reverse Linked List
- leetcode 237. Delete Node in a Linked List
- 【Leetcode刷题Python】452. 用最少数量的箭引爆气球
- 【Leetcode刷题Python】LeetCode 478. 在圆内随机生成点
- Java Stream 处理分组后取每组最大&Stream流之list转map、分组取每组第一条&Java 8 Collectors:reducing 示例(List分组取最值)