力扣题库刷题笔记496-下一个更大元素

这篇具有很好参考价值的文章主要介绍了力扣题库刷题笔记496-下一个更大元素。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、题目如下:

力扣题库刷题笔记496-下一个更大元素

2、个人Python代码实现

力扣题库刷题笔记496-下一个更大元素 

代码如下:

class Solution:

    def nextGreaterElement(self, nums1: List[int], nums2: List[int]) -> List[int]:

        #空列表用于输出结果

        ans = []

        for i in nums1:

            #如果nums2中不包含或者最后一位元素为当前遍历得元素,返回-1

            if nums2.count(i) == 0 or nums2[-1] == i:

                ans.append(-1)

            else:

                #初始化num = -1

                num = -1

                #当前元素切片后得数组进行遍历

                for j in nums2[nums2.index(i) + 1:]:

                    #如果切片后得nums2存在元素大于当前元素,则赋值给num,且退出本次循环

                    if j > i:

                        num = j

                        break

                #如果切片后的数组不存在元素大于当前元素,则num=-1

                ans.append(num)

        return ans

 文章来源地址https://www.toymoban.com/news/detail-425559.html

到了这里,关于力扣题库刷题笔记496-下一个更大元素的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 力扣题库刷题笔记73--矩阵置零

    1、题目如下:   2、个人Python代码实现 3、个人Python代码思路         a、声明2个空数组p、q,用于存放值为0的元素matrix[i][j]的下标         b、首先遍历二维数组matrix,找到值为0的元素matrix[i][j],将下标i加入数组p,将下标j加入数组q         c、再次遍历二维数组matrix,如

    2024年02月15日
    浏览(41)
  • 力扣题库刷题笔记5--最长回文子串

    1、题目如下: 2、个人Python代码实现:         首先想到的是通过类似冒泡排序的方式进行切片,然后判断切片的子字符串是否为回文字符串,然后记录出最长的回文字符串,代码如下:         可以看到,通过切片的方式,在字符串长度只有1的时候,会报错。当然,这里

    2024年02月09日
    浏览(47)
  • 力扣题库刷题笔记36--有效的数独

    1、题目如下:  2、个人Python代码实现如下: 3、个人Python代码思路:         先放一个AI解释的思路:         个人理解,本题思路其实很简单,判断每一行、每一列、每一个3*3的子数独是否存在重复数字,如果存在则返回False,如果不存在则返回True。         1、首先

    2024年02月13日
    浏览(40)
  • 力扣题库刷题笔记7--N字型变换

    1、题目如下: 2、个人Python代码实现:         看到此题的第一反应就是,生成一个类似二维数组的多个字符串,然后用个标志位控制N字符中字符的方向,例如flag = True,在每次循环时候以flag = flag * -1来控制。         由于示例中字符串s可能看的不是很确切,所以为了

    2024年02月09日
    浏览(27)
  • leetcode 496. 下一个更大元素 I

             这题提供暴力解法和单调栈法两种方法。         题中说了数组中没有重复的元素,为了避免重复遍历nums2数组,可以用一个哈希map和单调栈stack将nums2数组中的每个元素对应其查询值存储在map中,类似于每日温度。然后再遍历nums1查询相应元素对应的查询值。 代码

    2024年02月11日
    浏览(29)
  • 【栈】Leetcode 496 下一个更大元素I

    ---------------🎈🎈题目链接🎈🎈------------------- 两个栈进行操作,一个栈用来遍历寻找,一个栈用来保留 将待寻找的nums2中的元素入栈,之后遍历nums1, 如果栈顶元素大于nums1[i],则记录max,记录后弹出栈顶元素至tempstack,继续遍历栈,直到找到相等的为止 如果栈顶元素小于

    2024年01月17日
    浏览(34)
  • leetcode496. 下一个更大元素 I 【单调栈】

    【简单题】(暴力遍历法很简单)但是时间复杂度很高,n的立方级别了。。。 代码: 运行结果:   进阶方法: 进阶: 你可以设计一个时间复杂度为  O(nums1.length + nums2.length)  的解决方案吗? 答案思路:【单调栈】 怎么样才能使得 用 nums1中的元素去 nums2中查找的时候,能

    2024年02月10日
    浏览(32)
  • (单调栈) 496. 下一个更大元素 I——【Leetcode每日一题】

    难度:简单 nums1 中数字 x 的 下一个更大元素 是指 x 在 nums2 中对应位置 右侧 的 第一个 比 x 大的元素。 给你两个 没有重复元素 的数组 nums1 和 nums2 ,下标从 0 开始计数,其中 nums1 是 nums2 的子集。 对于每个 0 = i nums1.length ,找出满足 nums1[i] == nums2[j] 的下标 j ,并且在 nums

    2024年02月08日
    浏览(31)
  • Day58|leetcode 739. 每日温度、496.下一个更大元素 I

    今天开始单调栈! 题目链接:739. 每日温度 - 力扣(LeetCode) 视频链接:单调栈,你该了解的,这里都讲了!LeetCode:739.每日温度_哔哩哔哩_bilibili 题目概述   给定一个整数数组  temperatures  ,表示每天的温度,返回一个数组  answer  ,其中  answer[i]  是指对于第  i  天,下

    2024年02月09日
    浏览(27)
  • 【力扣】503. 下一个更大元素 II <单调栈>

    给定一个循环数组 nums ( nums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nums 中每个元素的 下一个更大元素 。数字 x 的 下一个更大的元素 是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。如果不存在,则输出 -1

    2024年02月12日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包