Re: [閒聊] 每日leetcode已回收
看板Marginalman作者sustainer123 (caster )時間1年前 (2024/05/06 12:08)推噓6(6推 0噓 8→)留言14則, 6人參與討論串190/1548 (看更多)
※ 引述《Rushia (早瀬ユウカの体操服 )》之銘言:
: https://leetcode.com/problems/remove-nodes-from-linked-list/description/
: 2487. Remove Nodes From Linked List
: 給你一個鏈結串列,移除串列中所有右邊存在比他大的數字的的節點。
: https://assets.leetcode.com/uploads/2022/10/02/drawio.png

: 思路:
: 1.題目其實是在求一個最長遞減串列,我們將原串列做反轉之後把遞增的串起來,再把
: 串起來的串列也反轉即可。
: py code:
: ----------------------------------------------
: class Solution:
: def removeNodes(self, head: Optional[ListNode]) -> Optional[ListNode]:
: def reverse(node: Optional[ListNode]):
: curr, prev = node, None
: while curr:
: tmp = curr.next
: curr.next = prev
: prev = curr
: curr = tmp
: return prev
: head = reverse(head)
: dummy = ListNode(-1)
: curr = dummy
: while head:
: if head.val >= curr.val:
: curr.next = head
: curr = curr.next
: head = head.next
: curr.next = None
: return reverse(dummy.next)
: ----------------------------------------------
照抄大老思路
Java Code:
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode reverse(ListNode node){
ListNode pre = null;
ListNode cur = node;
while(cur != null){
ListNode tmp = cur.next;
cur.next = pre;
pre = cur;
cur = tmp;
}
return pre;
}
public ListNode removeNodes(ListNode head) {
head = reverse(head);
ListNode dummy = new ListNode();
ListNode cur = dummy;
while(head != null){
if(head.val >= cur.val){
cur.next = head;
cur = head;
}
head = head.next;
}
cur.next = null;
return reverse(dummy.next);
}
}
1 Java函式裡面不能放函式
2 分號
3 static可以理解成全域變數ㄇ
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.136.198.113 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1714968533.A.6DA.html
推
05/06 12:09,
1年前
, 1F
05/06 12:09, 1F
推
05/06 12:09,
1年前
, 2F
05/06 12:09, 2F
推
05/06 12:13,
1年前
, 3F
05/06 12:13, 3F
→
05/06 12:13,
1年前
, 4F
05/06 12:13, 4F
推
05/06 12:14,
1年前
, 5F
05/06 12:14, 5F
推
05/06 12:15,
1年前
, 6F
05/06 12:15, 6F
→
05/06 12:16,
1年前
, 7F
05/06 12:16, 7F
推
05/06 12:17,
1年前
, 8F
05/06 12:17, 8F
→
05/06 12:17,
1年前
, 9F
05/06 12:17, 9F
→
05/06 12:18,
1年前
, 10F
05/06 12:18, 10F
→
05/06 12:27,
1年前
, 11F
05/06 12:27, 11F
→
05/06 12:29,
1年前
, 12F
05/06 12:29, 12F
→
05/06 12:31,
1年前
, 13F
05/06 12:31, 13F
→
05/06 12:31,
1年前
, 14F
05/06 12:31, 14F
討論串 (同標題文章)