ICode9

精准搜索请尝试: 精确搜索
  • LeetCode 350.两个数组的交集||【Java】2021-10-29 12:33:01

    目录 1. 题目2.思路与代码 1. 题目 给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2,2] 示例 2: 输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出:[4,9] 说明: 输出结果中每个元素出现的次数,应与元素在两个数组中出现

  • 数据结构算法 | 单调栈2021-10-28 22:02:03

    文章目录 算法概述题目下一个更大的元素 I思路代码 算法概述 当题目出现 「找到最近一个比其大的元素」 的字眼时,自然会想到 「单调栈」 。——三叶姐 单调栈以严格递增or递减的规则将无序的数列进行选择性排序。 题目 下一个更大的元素 I 给你两个 没有重复元素 的

  • leetcode 1035 不相交的线2021-10-27 22:34:37

    前言 题目:1035. 不相交的线 参考题解:不相交的线-代码随想录 提交代码 因为刚敲了leetcode 1143 最长公共子序列,所以能想到本题是对最长公共子序列的应用。要是哪天临时看到这一题,估计会想不出来这个转换关系。 class Solution { public: int maxUncrossedLines(vector<i

  • leetcode 718 最长重复子数组2021-10-27 21:03:02

    前言 题目:718. 最长重复子数组 参考题解:最长重复子数组-代码随想录、最长重复子数组-力扣官方题解 提交代码 暴力解 求两个序列,最长重复长度。暴力解,必然可以,但会超时。 具体思路见代码实现。实现如下。 #include <vector> #include <iostream> using namespace std; class

  • leetcode刷题(哈希表)2021-10-27 19:01:10

    当我们遇到要快速判断一个元素是否出现集合里的时候,就要考虑哈希法。 如果题目遇到需要判断一个元素是否出现过的场景应该第一时间想到哈希法。 有效的字母异位词 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 注意:若 s 和 t 中每个字符出现的次数都

  • LeetCode496. 下一个更大元素 I2021-10-27 12:34:59

    description 给你两个 没有重复元素 的数组 nums1 和 nums2 ,其中nums1 是 nums2 的子集。 请你找出 nums1 中每个元素在 nums2 中的下一个比其大的值。 nums1 中数字 x 的下一个更大元素是指 x 在 nums2 中对应位置的右边的第一个比 x 大的元素。如果不存在,对应位置输出 -1

  • 496. 下一个更大元素 I2021-10-26 23:35:06

    Solution 思路1: 暴力 class Solution { public int[] nextGreaterElement(int[] nums1, int[] nums2) { int[] ans = new int[nums1.length]; int cur = 0; for (int x: nums1) { boolean flag = false; boolean isOk = fal

  • 极客时间李煜东算法训练营2021版二期【包完结】2021-10-26 23:34:23

    网盘XZ:极客时间李煜东算法训练营2021版二期 为什么要学习数据结构和算法 学习算法最重要的是什么? 在学习算法的过程中,一能解决问题,二对自己有用,是最大的推动力。 而那些抽象的,与程序员日常工作关系不大的竞赛题,很难提起大多数人的学习兴趣。 最好能通过工作中应用的一些案例来切入

  • 2021 1016 每日一题 下一个更大元素Ⅰ2021-10-26 23:03:21

    跟我妈打电话的时候 随便写了写 一次就过啦 今日份开心  但是我的内存占用很大很大 基本上就是暴力求解 好好学一下栈 和 各种排序查找算法       class Solution { public int[] nextGreaterElement(int[] nums1, int[] nums2) { int length1=nums1.length; int

  • LeetCode 496 - 下一个更大元素 I2021-10-26 20:33:40

    给你两个 没有重复元素 的数组 nums1 和 nums2 ,其中nums1 是 nums2 的子集。 请你找出 nums1 中每个元素在 nums2 中的下一个比其大的值。 nums1 中数字 x 的下一个更大元素是指 x 在 nums2 中对应位置的右边的第一个比 x 大的元素。如果不存在,对应位置输出 -1 。 示例 1: 输

  • 496.下一个更大元素Ⅰ——记录(C++)2021-10-26 20:01:05

    class Solution { public: vector<int> nextGreaterElement(vector<int>& nums1, vector<int>& nums2) { for(int i=0;i<nums1.size();i++) { int t=0; for(int j=0;j<nums2.size();j++)

  • 【数据结构】单调栈 + LeetCode 496. 下一个更大元素 I2021-10-26 18:05:16

    今天刷Leetcode每日一题496. 下一个更大元素 I看题解才接触到这个概念,学习一下。 参考文章:特殊数据结构:单调栈https://www.cnblogs.com/RioTian/p/13462825.html 单调栈  即栈内元素是有序的,细分为2种: 单调递减栈:从栈底到栈顶的元素单调递减 单调递增栈:从栈底到栈顶的元素单

  • 《Leetcode每日一题》496.下一个更大元素Ⅰ2021-10-26 10:30:00

     关键: 查找到对应位置遍历即可。 class Solution { public: vector<int> nextGreaterElement(vector<int>& nums1, vector<int>& nums2) { int len1=nums1.size(),len2=nums2.size(); vector<int> ve; bool flag=false;

  • 合并两个有序数组2021-10-23 14:04:25

    方法一: void merge(int* nums1, int nums1size, int m, int* nums2, int nums2size, int n) { assert(nums1 != NULL &&nums2 != NULL); int* newdata = (int*)malloc(sizeof(int) * (m + n)); if(NULL==newdata) { exit(1); } int i = 0, j = 0; //i nums1的下

  • LeetCode刷题day02(空闲时补充其他方法...)2021-10-19 21:30:12

    3. 无重复字符的最长子串 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: s = "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所

  • leetcode454-四数相加 II(中等难度)2021-10-19 09:30:17

    四数相加 II 题目描述我的解题思路1(分组+hash表)代码时间复杂度 我的解题思路2代码时间复杂度 力扣链接 题目描述 给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足: 0 <= i, j, k, l < nnums1[i] + nums2[j] +

  • [LeetCode]4.寻找两个正序数组的中位数(Java)2021-10-18 15:34:38

    原题地址: median-of-two-sorted-arrays 题目描述: 示例 1: 输入:nums1 = [1,3], nums2 = [2] 输出:2.00000 解释:合并数组 = [1,2,3] ,中位数 2 示例 2: 输入:nums1 = [1,2], nums2 = [3,4] 输出:2.50000 解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5 示例 3: 输入:nums1 = [0,0], num

  • 350.两个数组的交集II2021-10-16 20:02:52

    给定两个数组,编写一个函数来计算它们的交集。 示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2,2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[4,9] 来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/intersection-of-two-arrays-ii著作权归领扣网络所有。商

  • 【leetCode周赛】【美团第 262 场周赛】:leetCode:2032. 至少在两个数组中出现的值2021-10-16 19:03:57

    1、题目描述 给你三个整数数组 nums1、nums2 和 nums3 ,请你构造并返回一个 不同 数组,且由 至少 在 两个 数组中出现的所有值组成。数组中的元素可以按 任意 顺序排列。 2、算法分析 3个数组,题目要求求出数组中的数字,这个数字至少是在其中的两个数组中出现过。求出数组中符合条

  • 力扣——合并两个有序数组2021-10-16 17:02:47

    合并两个有序数组 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为

  • leetcode(81)_1577_medium_数的平方等于两数乘积的方法数_python2021-10-15 21:02:27

    数的平方等于两数乘积的方法数 题目描述: 给你两个整数数组 nums1 和 nums2 ,请你返回根据以下规则形成的三元组的数目(类型 1 和类型 2 ): 类型 1:三元组 (i, j, k) ,如果 nums1[i]2 == nums2[j] * nums2[k] 其中 0 <= i < nums1.length 且 0 <= j < k < nums2.length 类型 2:三元

  • leetcode 88.合并两个有序数组2021-10-14 23:02:14

    题目描述:给你两个按非递减顺序 排列的整数数组 nums1 和nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你合并nums2 到nums1中,使合并后的数组同样按非递减顺序排列。 注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1

  • 算法—单调栈小结2021-10-13 19:32:39

    算法—单调栈小结 前言 在leetcode刷题的时候遇到了503. 下一个更大元素 II。一开始是使用暴力解法,会因为\(O(n^2)\)的时间复杂度而导致超时。看了题解之后了解了单调栈相关的知识,运用单调栈的方法可以在\(O(n)\)时间内解决这个问题。 单调栈 单调栈是在栈的FILO(先进后出)的特性

  • 力扣第1035题:不相交的线、第1049题:动态规划解最后一块石头的重量(Java)2021-10-11 20:31:19

    一、前言         今天很例外哈,做了两题,是因为我觉得第一题题型前两天遇见过,所以有些熟悉,很快就写出来了,然后就想着多写一题,结果第二题还是挺常规的,那今天就这两题吧,开始。 二、题目描述(1035)           三、题目分析          这道题乍一看挺吓人的,因为要

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有