国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

【leetcode】203. Remove Linked List Elements

2019-11-06 06:51:58
字體:
來源:轉載
供稿:網友

203. Remove Linked List Elements

https://leetcode.com/PRoblems/remove-linked-list-elements/?tab=Description

Remove all elements from a linked list of integers that have value val.

Example Given: 1 –> 2 –> 6 –> 3 –> 4 –> 5 –> 6, val = 6 Return: 1 –> 2 –> 3 –> 4 –> 5

思路

用一個新的ListNode fakehead來處理邊界情況,fakeHead.next = head;由于本題有可能刪除當前節點,所以用雙指針pre和curr。

代碼

解法一

public class Solution { public ListNode removeElements(ListNode head, int val) { ListNode fakeHead = new ListNode(-1); fakeHead.next = head; ListNode curr = head, prev = fakeHead; while (curr != null) { if (curr.val == val) { prev.next = curr.next; } else { prev = prev.next; } curr = curr.next; } return fakeHead.next; }}

解法二 遞歸

個人不認為這是個好解法,如果LinkedList長度過大,會堆溢出

public ListNode removeElements(ListNode head, int val) { if (head == null) return null; head.next = removeElements(head.next, val); return head.val == val ? head.next : head;}
上一篇:mysql的基本語句

下一篇:File的節點流

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 扶余县| 湖北省| 都江堰市| 丘北县| 刚察县| 隆回县| 西青区| 榆树市| 英吉沙县| 漳平市| 抚顺县| 丹东市| 绥江县| 长兴县| 海晏县| 丹东市| 壤塘县| 图们市| 宣化县| 嘉祥县| 江达县| 三江| 双鸭山市| 汝州市| 翁源县| 中方县| 和龙市| 班玛县| 五指山市| 南郑县| 新昌县| 泸西县| 项城市| 北宁市| 上蔡县| 冕宁县| 康乐县| 靖州| 射洪县| 馆陶县| 仁布县|