leetcode——503. 下一个更大元素 II

Posted 欣姐姐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode——503. 下一个更大元素 II相关的知识,希望对你有一定的参考价值。

class Solution(object):
    def nextGreaterElements(self, nums):
        """
        :type nums: List[int]
        :rtype: List[int]
        """
        if not nums:
            return
        if sorted(nums,reverse=True)==nums and len(set(nums))==len(nums):
            return [-1]+[nums[0]]*(len(nums)-1)
        stack=[]
        b=max(nums)
        for i in range(len(nums)):
            if nums[i] == b:
                stack.append(-1)
            else:
                j=i+1
                if j==len(nums):
                    j=0
                while j<len(nums):
                    if nums[j]>nums[i]:
                        stack.append(nums[j])
                        break
                    else:
                        j+=1
                        if j==len(nums):
                            j=0
        return stack
执行用时 :248 ms, 在所有 python 提交中击败了58.82%的用户
内存消耗 :13.6 MB, 在所有 python 提交中击败了34.65%的用户
 
——2019.11.2

以上是关于leetcode——503. 下一个更大元素 II的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 0503. 下一个更大元素 II

503.下一个更大元素 II

503. 下一个更大元素 II

503. 下一个更大元素 II

503. Next Greater Element II 下一个更大元素

刷题6:下一个更大元素 II