Re: [闲聊] 每日leetcode

楼主: oinishere (是oin捏)   2024-05-06 12:22:42
※ 引述 《sustainer123 (caster)》 之铭言:
:  
: ※ 引述《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
思路:
笑死
直接用阵列做monotonic stack
很白痴可是很简单
只要里面有一个以上的东西
就要改变他们的串接关系
然后传第一个就不用重新全串了
class Solution {
public:
ListNode* removeNodes(ListNode* head)
{
ListNode* preh = new ListNode(0,head);
vector<ListNode*> paper;
ListNode* n = head;
while(n)
{
while(!paper.empty() && paper[paper.size()-1]->val < n->val)
{
paper.pop_back();
}
paper.push_back(n);
if(paper.size()>1)
{
paper[paper.size()-2]->next = paper[paper.size()-1];
}
n = n->next;
}
return paper[0];
}
};
作者: SecondRun (雨夜琴声)   2024-05-06 12:24:00
大师
作者: JIWP (JIWP)   2024-05-06 12:24:00
别卷了 臭甲,去玩py
作者: sustainer123 (caster)   2024-05-06 12:28:00
大师
作者: wu10200512 (廷廷)   2024-05-06 12:35:00
大师

Links booklink

Contact Us: admin [ a t ] ucptt.com