leetcode column equal pairs

LeetCode 双指针

15. 三数之和 (为0) 下标不能是重复的,必定右 i<l<r 1、先对数组排序(从小到大) 2、外层 i 遍历 如果 nums[i] > 0 ,整个 nums[] 后面的必定无法有三元组为0(排过序了,后面的 nums[l] nums[r] 都会大于0)。break。 如果 nums[i] = ......
指针 LeetCode

【LeetCode动态规划#14】子序列系列题(最长递增子序列、最长连续递增序列、最长重复子数组、最长公共子序列)

最长递增子序列 力扣题目链接(opens new window) 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。 示例 1 ......
序列 数组 LeetCode 动态 14

【哈希表】LeetCode 895. 最大频率栈

题目链接 895. 最大频率栈 思路 很容易想到使用 map:valToFreq 来记录每个值出现的频率,这是没问题的,但关键是如何通过频率寻找到应该返回的数。 这时候我想到再加一个 map:freqToVal 来记录每个频率中出现的数字,为了符合题目返回最接近栈顶的元素的要求,freqToVal ......
频率 LeetCode 895

代码随想录Day38-Leetcode509. 斐波那契数,70. 爬楼梯,746. 使用最小花费爬楼梯

咳咳, 因为找实习+摆导致时间被浪费大半; 先从动态规划学起吧,之前的慢慢补。 理论基础 动态规划的解题步骤 1.确定dp数组及对应下标的含义 2.确定dp的状态转移方程(递推公式) 3.确定dp数组如何初始化 4.确定dp遍历顺序 5.距离推导dp数组验证 509. 斐波那契数 题目链接:http ......
楼梯 随想录 随想 Leetcode 代码

【TreeMap】LeetCode 1438. 绝对差不超过限制的最长连续子数组

题目链接 1438. 绝对差不超过限制的最长连续子数组 思路 本题一看就是一个要用到滑动窗口的题目,难点在于如何快速求窗口中的最大值和最小值。幸好 Java 中有 TreeMap 这个数据结构,它在构成 map 映射的同时,还能够保证其中的元素有序,这样就能很方便求得窗口中的最大值和最小值了。 代码 ......
数组 LeetCode TreeMap 1438

leetcode 608 樹節點

樹節點 select id, 'Root' as Type from tree where p_id is null union select id, 'Inner' as Type from tree where id in ( select distinct p_id from tree whe ......
leetcode 608

1351. 统计有序矩阵中的负数(leetcode)

https://leetcode.cn/problems/count-negative-numbers-in-a-sorted-matrix/ 1351. 统计有序矩阵中的负数 1.二分法:把每一行进行一遍二分,找到正数与负数的边界,且此时grid[i][mid]也为负数,即边界下标的对应值是负数的 ......
负数 矩阵 leetcode 1351

[ABC129E] Sum Equals Xor

2023-01-15 题目传送门 翻译 难度&重要性(1~10):4 题目来源 AtCoder 题目算法 dp/模拟 解题思路 我们都知道,异或是一种不进位的加法,而要想 $ a + b = a \oplus b $ 就不能进位,也就是说每一位不能是 $ ( 1,1 ) $ 就有 $ ( 0,1 ) ......
Equals 129E ABC 129 Sum

【哈希表】LeetCode 767. 重构字符串

题目链接 767. 重构字符串 思路 先用哈希表统计出出现次数最多的字符,如果这个次数大于一半,说明这个字符总会挨在一起,直接返回 ""。 如果不超过一半,则先把字符填在偶数位置(先填出现次数最多的字符),偶数位置填满了再填奇数位置。 代码 class Solution { public Strin ......
字符串 字符 LeetCode 767

【DP】LeetCode 740. 删除并获得点数

题目链接 740. 删除并获得点数 思路 分析动态规划题目的时候只需要考虑最后一个阶段,因为所有的阶段转化都是相同的,考虑最后一个阶段容易发现规律 在数组的动态规划问题中,一般 dp[i] 都是表示以 nums 以前 i 个元素组成(即 nums[i - 1])的状态;dp[i][j] 分别表示以 ......
点数 LeetCode 740

B. Equalize by Divide - 贪心+思维+构造+数学+排序

题意:   给定一个数组,可以进行任意多次以下操作:   1.选择第i和第j个数。   2.使a[i]=a[i]/a[j](向上取整)。   不可以插入或者删减数组元素,求多少次使数组元素都相同,输出次数以及每次操作的两个下标i,j;如果无法实现输出-1. 分析:   数组中存在1一定无... ......
Equalize 思维 数学 Divide by

LeetCode 152. 乘积最大子数组

原题解 ###题目 约束 ###题解 class Solution { public: int maxProduct(vector<int>& nums) { int maxF = nums[0], minF = nums[0], ans = nums[0]; for (int i = 1; i < ......
乘积 数组 LeetCode 152

R语言中 column_to_rownames 函数实现将数据框中任一列转换为行名

001、 library(tidyverse) ## 加载包 a <- c(3, 5, 2, 1) b <- letters[1:4] c <- LETTERS[1:4] dat <- data.frame(a, b, c) dat column_to_rownames(dat, "a") ## 将 ......

[LeetCode] 2336. Smallest Number in Infinite Set

You have a set which contains all positive integers [1, 2, 3, 4, 5, ...]. Implement the SmallestInfiniteSet class: SmallestInfiniteSet() Initializes t ......
LeetCode Infinite Smallest Number 2336

[LeetCode] 2418. Sort the People

You are given an array of strings names, and an array heights that consists of distinct positive integers. Both arrays are of length n. For each index ......
LeetCode People 2418 Sort the

【LeetCode动态规划#13】买卖股票含冷冻期(状态众多,比较繁琐)、含手续费

最佳买卖股票时机含冷冻期 力扣题目链接(opens new window) 给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。 设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票): 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的 ......
手续费 LeetCode 手续 状态 股票

LeetCode 1643. 第 K 条最小指令

康托展开 一开始无脑枚举全排列, 果断超时, 还是得看看如果降低计算量。 题目destination = [2,3], 相当于2个V, 3个H, 输出全排列去重后的对应位置字典序列内容。 忽略去重 则问题为全排列, 所有可能为: $$ (\sum destination)! = (2+3)! = 5 ......
指令 LeetCode 1643

leetcode调研version0

这是我第一次发博客,所以许多功能还不太会使用。前几次的随笔既当作记录,也当作自己的练习。 最近想要刷leetcode,纠结用哪种语言(我自己学过c/c++, python, fortran, Java),所以前期做了一些调研,在此记录一下。 c语言: 网址:https://github.com/be ......
leetcode version0 version

Java中为什么重写equals()也需要重写hashCode()?

所有类默认继承Object类 先看一下Object源码 package java.lang; public class Object { //默认调用本地的hashcode()方法 根据内存地址生成hash值 避免不了哈希冲突 public native int hashCode(); //默认调用 ......
hashCode equals Java

leetcode 607 銷售員

銷售員 select s.`name` from salesperson s left join orders o on s.sales_id=o.sales_id left join company c on o.com_id=c.com_id and c.name='RED' group by ......
leetcode 607

leetcode 595 大的國家

大的國家 select `name`, population, area from World where area >= 3000000 or population >= 25000000 ......
leetcode 595

【DP】LeetCode 213. 打家劫舍 II

题目链接 213. 打家劫舍 II 思路 分析动态规划题目的时候只需要考虑最后一个阶段,因为所有的阶段转化都是相同的,考虑最后一个阶段容易发现规律 在数组的动态规划问题中,一般 dp[i] 都是表示以 nums 以前 i 个元素组成(即 nums[i - 1])的状态;dp[i][j] 分别表示以 ......
打家劫舍 LeetCode 213 II

leetcode 586 訂單最多的客戶

訂單最多的客戶 select customer_number from Orders group by customer_number having count(order_number) = ( select count(order_number) from Orders group by cus ......
leetcode 586

leetcode 584 尋找用戶推薦人

尋找用戶推薦人 select name from customer where referee_id <> 2 or referee_id is null ......
leetcode 584

leetcode 570 至少有5名直接下屬的經理

至少有5名直接下屬的經理 子查詢 select `name` from Employee where id in ( select managerId from Employee group by managerId having count(managerId) >= 5 ) 自連接 select ......
少有 leetcode 570

[LeetCode] 1342. Number of Steps to Reduce a Number to Zero 将数字变成 0 的操作次数

Given an integer num, return the number of steps to reduce it to zero. In one step, if the current number is even, you have to divide it by 2, otherwi ......
Number LeetCode 次数 数字 Reduce

【DP】LeetCode 198. 打家劫舍

题目链接 198. 打家劫舍 思路 分析动态规划题目的时候只需要考虑最后一个阶段,因为所有的阶段转化都是相同的,考虑最后一个阶段容易发现规律 在数组的动态规划问题中,一般 dp[i] 都是表示以 nums 以前 i 个元素组成(即 nums[i - 1])的状态;dp[i][j] 分别表示以 num ......
打家劫舍 LeetCode 198

【DP】LeetCode 1277. 统计全为 1 的正方形子矩阵

题目链接 1277. 统计全为 1 的正方形子矩阵 思路 分析动态规划题目的时候只需要考虑最后一个阶段,因为所有的阶段转化都是相同的,考虑最后一个阶段容易发现规律 在数组的动态规划问题中,一般 dp[i] 都是表示以 nums 以前 i 个元素组成(即 nums[i - 1])的状态;dp[i][j ......
正方形 正方 矩阵 LeetCode 1277

LeetCode 148. 排序链表

前置题目 21. 合并两个有序链表 原题解 ###题目 约束 ###题解 ####方法一 class Solution { public: ListNode* sortList(ListNode* head) { return sortList(head, nullptr); } ListNode* ......
LeetCode 148

【LeetCode动态规划#12】详解买卖股票I~IV,经典dp题型

买卖股票的最佳时机 力扣题目链接(opens new window) 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返 ......
题型 LeetCode 股票 经典 动态