这题很容易想到栈,但可能想不到 单调栈。
单调栈monotonic有两种: 单调递增, 单调递减
这里比较特殊的是 他是个linkedlist, 我们用ans数组来存放,链表的值,stack来存放index,维护一个 单独递减的stack,一旦有更大的值进入,就把比他小的都从 stack里面pop出来,都把ans改好。
# Definition for singly-linked list.
# class ListNode:
# def __init__(self, val=0, next=None):
# self.val = val
# self.next = next
class Solution:
def nextLargerNodes(self, head: Optional