ICode9

精准搜索请尝试: 精确搜索
  • longest increasing subsequence2022-08-18 13:02:02

    300. Longest Increasing Subsequence Medium Given an integer array nums, return the length of the longest strictly increasing subsequence. A subsequence is a sequence that can be derived from an array by deleting some or no elements without changing t

  • 哈希表4:两数之和(1)2022-08-18 11:00:28

    本题如下:(链接:https://leetcode.cn/problems/two-sum/) 题目:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你

  • LeetCode/最大相等频率2022-08-18 01:00:48

    给你一个正整数数组 nums,请你帮忙从该数组中找出能满足下面要求的最长前缀,并返回该前缀的长度 从前缀中恰好删除一个元素后,剩下每个数字的出现次数都相同。 1. 双哈希表 一个记录每个值的频数,一个记录每个频数的个数 class Solution { public: int maxEqualFreq(vector<int>&

  • 力扣-15-三数之和2022-08-17 23:34:03

    直达链接 前两天刚做了梦开始的地方两数之和 常规思路是二层遍历,对于每个数都去遍历数组找有没有刚好能凑成指定数字的 进阶思路是使用hashmap,一次遍历,对于每个元素去看hahsmap里有没有能凑成一对的,有就直接返回(因为题设答案唯一),没有就插到hashmap里面去(键为值,值为索引位置) 题目要

  • 239.sliding-window-maxium 滑动窗口最大值2022-08-16 22:05:36

    采用双端队列deque,并且保证deque从前往后依次递减,并且出现在deque里面的相邻两数,其在原滑动窗口中,两数中间的数一定比这两个数小。为了保证这一点,在push_back()时,如果deque.back()小于要push_back()的数,则执行pop_back(),直到deque为空或者不小于为止。 #include <deque> #include

  • 数组2022-08-16 22:00:38

    数组 1.定义 数组是相同类型数据的有序集合 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成 2.数组的声明和创建 package com.ylmxy.array; public class ArrayDemo01 { //变量的类型 变量的名字 = 变量的值; //数组类型 public

  • *Codeforces Round #766 (Div. 2) C. Not Assigning(dfs)2022-08-16 21:33:38

    https://codeforces.com/contest/1627/problem/C 给你一个n个顶点的树,顶点从1到n,边从1到n-1。树是没有圈的连通无向图。你必须给树的每条边分配整数权重,这样得到的图就是一个素数树。 素数树是指由一条或两条边组成的每条路的重量都是素数的树。一条路径不应该访问任何顶点两次。

  • 算法性能技巧2022-08-16 12:30:21

    算法性能提升总结 巧用hash表 利用hash,来进行映射,从而降低代码的复杂度,和冗余度 eg: 求两个数之和 class Solution: def twoSum(self, nums: List[int], target: int)->List[int]: """ 暴力方法实现时间复杂度为O(n*n) """ n = len(nums)

  • LeetCode 169 Majority Element2022-08-16 03:01:55

    Given an array nums of size n, return the majority element. The majority element is the element that appears more than ⌊n / 2⌋ times. You may assume that the majority element always exists in the array. Solution 利用投票法即可:遇到相同的元素,就将计数器加一;否

  • 力扣-刷题-324. 摆动排序 II2022-08-15 18:30:08

    题目链接 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/wiggle-sort-ii 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 题目描述 给你一个整数数组 nums,将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]... 的顺序。 你可以假设所有输入数

  • leetcode698-划分为k个相等的子集2022-08-15 16:02:02

    划分为k个相等的子集 回溯+剪枝 首先先判断总和sum能否被整除。然后对数组排序,从后向前遍历。 如果当前的值大于target,表明最大值已经超出范围,直接返回false 如果当前的值等于target,那么直接将其放入bucket中 如果当前的值小于target,需要进行回溯,从当前位置向前回溯即可 回溯

  • 根据数组构建二叉树2022-08-15 09:00:56

    // """ // 给定一个非空列表,一层一层的构建一个二叉树。 // 例如: // input=[5,7,9,2,4,6,3,1,8,10] // 我希望返回结果: // 5(0) // / \ // 7(1) 9(2) // / \ / \ // 2(3) 4(4) 6(5) 3(6) // / \ / // 1(7) 8

  • leetcode1-两数之和2022-08-14 19:01:10

    两数之和 暴力遍历 class Solution { public int[] twoSum(int[] nums, int target) { int n = nums.length; for(int i = 0; i < n; i++){ for(int j = i+1; j < n; j++){ if(nums[i]+nums[j] == target){

  • 多数元素2022-08-14 12:34:14

    给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入:nums = [3,2,3]输出:3示例 2:输入:nums = [2,2,1,1,1,2,2]输出:2 参考代码:   public int majorityElem

  • 最长递增子序列-LIS2022-08-13 22:33:42

    前缀、序列型动态规划 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。  示例 1: 输入:nums = [10,9,2,5,3,7,101,18]输出:4解释:最长

  • 定义Map时候 记得把类型写在定义的后面:在初始化时候写类型不好使2022-08-13 21:03:32

    定义Map时候 记得把类型写在定义的后面:在初始化时候写类型不好使 Map map = new HashMap<Integer, Integer>(); for(int i=0;i< nums.length;i++){ if(map.containsKey(nums[i])){ //下一行会报错:Operator '+' cannot be applied to 'java.la

  • 41. 缺失的第一个正数2022-08-13 19:02:05

    41. 缺失的第一个正数 给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。   示例 1: 输入:nums = [1,2,0] 输出:3 示例 2: 输入:nums = [3,4,-1,1] 输出:2 示例 3: 输入:nums = [7,8,9,11,12]

  • LeetCode 673 Number of Longest Increasing Subsequence2022-08-13 02:01:10

    Given an integer array nums, return the number of longest increasing subsequences. Notice that the sequence has to be strictly increasing. Solution 我们需要求出最长长度序列的个数。不妨用两个数组 \(dp1, dp2\). 其中 \(dp1[i]\) 表示以 \(i\) 结尾的最长递增序列的

  • 双周赛第84场2022-08-12 14:33:00

    双周赛84 ​ 这次双周赛,其实我只做出来了第一题,下面这三道都是听了讲解才写出来。 2364 统计坏数对的数目 ​ 这道题给出条件:如果 i < j 并且j - i != nums[j] - nums[i] ,那么我们称(i, j) 是一个坏数对。 ​ 这里的式子两边都是两个字母,那这个规律直接用得话,去枚举需要n^2的时

  • LeetCode 1567. Maximum Length of Subarray With Positive Product2022-08-12 08:33:44

    原题链接在这里:https://leetcode.com/problems/maximum-length-of-subarray-with-positive-product/ 题目: Given an array of integers nums, find the maximum length of a subarray where the product of all its elements is positive. A subarray of an array is a consecuti

  • LeetCode 旋转数组算法题解 All In One2022-08-12 05:00:35

    LeetCode 旋转数组算法题解 All In One 189. Rotate Array /** Do not return anything, modify nums in-place instead. */ // solution 1:暴力破解:❌ Time Limit Exceeded // function rotate(nums: number[], k: number): void { // if(k === 0) { // // return; //

  • Java学习 (17) Java数组篇(01)数组定义&数组声明和创建2022-08-11 12:01:04

    数组的定义 数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 数组的声明和创建 首先必须声明数组变量,才能在程序中使用数组 Java语言使用new

  • 976. 三角形的最大周长2022-08-11 08:31:50

    给定由一些正数(代表长度)组成的数组 nums ,返回 由其中三个长度组成的、面积不为零的三角形的最大周长 。如果不能形成任何面积不为零的三角形,返回 0。   示例 1: 输入:nums = [2,1,2]输出:5示例 2: 输入:nums = [1,2,1]输出:0  来源:力扣(LeetCode)链接:https://leetcode.cn/problems/la

  • 1.两数之和2022-08-09 01:05:02

    1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。  示例 1:输入:nums

  • # 华为机试:HJ77火车进站 与 HJ50四则运算2022-08-08 16:31:18

    华为机试 记录两个与栈相关的算法题,折腾了一下午 需要注意dfs前后对称的操作 利用栈结构去处理存在明显先后顺序的问题,比如四则运算等 HJ77 火车进站 栈+dfs回溯 #include<bits/stdc++.h> using namespace std; int N; vector<vector<int>> res; vector<int> path; void dfs(sta

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

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

ICode9版权所有