substring leetcode maximum length

【二分查找】LeetCode 528. 按权重随机选择

题目链接 528. 按权重随机选择 思路 代码 class Solution { private int[] sum; public Solution(int[] w) { sum = new int[w.length + 1]; for(int i = 1; i < sum.length; i++ ......
权重 LeetCode 528

【二分查找】LeetCode 540. 有序数组中的单一元素

题目链接 540. 有序数组中的单一元素 思路 假如不存在单个的元素,那么在奇数位置上总是成对元素的第一个元素,偶数位置上总是成对元素的第二个元素,但是如果加入了单个元素呢? 我们可以看到在单个元素的左边这个特点没有变化,但是在单个元素的右边,奇数位置上总是成对元素的第二个元素,偶数位置上总是成对元 ......
数组 LeetCode 元素 540

LeetCode/总持续时间可被 60 整除的歌曲

在歌曲列表中,第 i 首歌曲的持续时间为 time[i] 秒 返回其总持续时间(以秒为单位)可被 60 整除的歌曲对的数量 ###1. 打表(数据量较小) 列出60的倍数+哈希查找 class Solution { public: int numPairsDivisibleBy60(vector<i ......
LeetCode 时间 歌曲 60

Codeforces 1817F - Entangled Substrings(SA)

为什么赛时不开串串题?为什么赛时不开串串题?为什么赛时不开串串题?为什么赛时不开串串题?为什么赛时不开串串题? 一种 SA 做法,本质上和 SAM 做法等价,但是说来也丢人,一般要用到 SAM 的题我都是拿 SA 过的/wul 考虑将 $ac$ 看作一个整体。记 $\text{occ}(S)$ 为 ......
Codeforces Substrings Entangled 1817F 1817

PAT Advanced 1007. Maximum Subsequence Sum

PAT Advanced 1007. Maximum Subsequence Sum 1. Problem Description: Given a sequence of $K$ integers { $N_1, N_2, ..., N_K$ }. A continuous subsequence ......
Subsequence Advanced Maximum 1007 PAT

LeetCode 142. 环形链表 II

###题目链接:LeetCode 142. 环形链表 II ###题意: 如果链表中存在环,则找出环的入口,如果链表中不存在环,则返回null ###解题思路: 解决本题有两个关键的点: 判断链表中是否存在环 如果存在环的话,如何找出环的入口 ####判断链表是否存在环 判断一个链表是否存在环,可以 ......
环形 LeetCode 142 II

MYSQL中substring_index()用法

需求,我只需要第一个逗号和第二个逗号之间的数据 SELECT SUBSTRING_INDEX( SUBSTRING_INDEX( bbt.ancestors, ',', 2 ), ',',- 1 ) AS type_id FROM base_business_type bbt mysql subst ......
substring_index substring MYSQL index

leetcode11双指针

本题最关键的一点是移动的是短板,不停向内移动短板才可能将面积变大。 int i=0,j=height.size(); while(i<j){ area=height[i] < height[j]? max(area,(j-i)*height[i++]): max(area,(j-i)*height[ ......
指针 leetcode 11

LeetCode 160. 相交链表

题目链接:LeetCode 160. 相交链表 **题意:**本题是让找出两个相交的链表的交点,并返回。 解题思路: 方法一: 由于A,B两条链表的长度是未知的,长度不一定相同,但是两个链表的后半段是相交的,也就是说两条链表的后半段的某一部分是相同的, 因此我们可以求出两个链表的长度,并求出两个链表 ......
LeetCode 160

LeetCode 19. 删除链表的倒数第 N 个结点

题目链接:LeetCode 19. 删除链表的倒数第 N 个结点 本题依旧采用双指针的解法, 首先快指针先走 n+1 步,然后快慢指针同时往后走。当快指针走到链表末尾时,慢指针所在的位置刚好是倒数第n-1个结点, 然后利用慢指针,删除倒数第n个结点 完整代码如下: func removeNthFro ......
结点 LeetCode 19

LeetCode 24. 两两交换链表中的节点

题目链接:LeetCode 24. 两两交换链表中的节点 本题不涉及算法,直接模拟就可以了,但是模拟的过程中,最好进行画图演示,不然容易出错。 想要达到两两交换链表中节点的效果,就需要按照以下三个步骤进行。 同时为了将头结点和非头结点统一处理,因此新建一个虚拟头结点, 初始时,cur指向虚拟头结点, ......
节点 LeetCode 24

String中size()、length()、sizeof()的区别

在C++中,std::string类有两个成员函数可以**用于获取字符串的长度:**size()和length()。这两个函数的功能是相同的,它们都返回字符串中字符的数量(不包括结尾的null字符)。 这两个函数的区别只是名称不同,其功能是相同的,都用于返回字符串中字符的数量。 在实际使用中,siz ......
String length sizeof size

LeetCode/数青蛙

请你返回模拟字符串中所有蛙鸣所需不同青蛙的最少数目 1. 回溯+标记 每一趟跑一个青蛙(超时) class Solution { public: int minNumberOfFrogs(string croakOfFrogs) { int n =croakOfFrogs.size(); strin ......
青蛙 LeetCode

[LeetCode] 1419. Minimum Number of Frogs Croaking

You are given the string croakOfFrogs, which represents a combination of the string "croak" from different frogs, that is, multiple frogs can croak at ......
LeetCode Croaking Minimum Number Frogs

[LeetCode] 1456. Maximum Number of Vowels in a Substring of Given Length

Given a string s and an integer k, return the maximum number of vowel letters in any substring of s with length k. Vowel letters in English are 'a', ' ......
Substring LeetCode Maximum Length Number

LeetCode 周赛 343(2023/04/30)结合「下一个排列」的贪心构造问题

本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问。 大家好,我是小彭。 今天是五一假期的第二天,打周赛的人数比前一天的双周赛多了,难道大家都只玩一天吗?这场周赛是 LeetCode 第 343 场单周赛,如果不考虑第一题摆烂的翻译,整体题目质量还是很不错哒。 ......
LeetCode 问题 2023 343 04

LeetCode刷题记录|LeetCode热题100|226.翻转二叉树(easy)

题目描述:给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 思路与算法:从根节点开始,递归地对树进行遍历,并从叶子节点先开始翻转。如果当前遍历到的节点 root 的左右两棵子树都已经翻转,只需交换两棵子树的位置,即可完成以 root 为根节点的整棵子树的翻转。 时间复杂度:O(n ......
LeetCode easy 100 226

LeetCode 206. 反转链表

题目链接:LeetCode 206. 反转链表 本题是链表题目中非常重要的一道题目--反转指针。 解题方法有两种:1.双指针法 2. 递归法 首先看双指针法: 快指针总是在慢指针的前面,也就是每次将快指针的节点的next指针更新成指向慢指针,这样不就进行了反转嘛。 完整代码如下: func reve ......
LeetCode 206

[Leetcode] 0705. 设计哈希集合

705. 设计哈希集合 English Version 题目描述 不使用任何内建的哈希表库设计一个哈希集合(HashSet)。 实现 MyHashSet 类: void add(key) 向哈希集合中插入值 key 。 bool contains(key) 返回哈希集合中是否存在这个值 key 。 ......
Leetcode 0705

LeetCode 203. 移除链表元素

题目链接:LeetCode 203. 移除链表元素 本题是一个经典的单链表删除元素的题目,主要注意的有两点: 如果删除的元素是不是头元素,则直接 p.Next= p.Next.Next即可 如果删除的元素是头元素,则需要进行单独的处理 for head != nil && head.Val == v ......
LeetCode 元素 203

LeetCode 59. 螺旋矩阵 II

题目链接:LeetCode 59. 螺旋矩阵 II 本题不涉及算法,只是简单的模拟,但是由于边界条件比较多,因此容易出错。 分析题干:题目要求按照右、下、左、上、这样的顺序对数组进行填充,填充的值为 1 ~ n*n,因此问题的关键就是找到待填充的位置,将其值赋值为 i 即可。 由于填充的顺序是有规律 ......
矩阵 螺旋 LeetCode 59 II

LeetCode 209. 长度最小的子数组

题目链接:LeetCode 209. 长度最小的子数组 本题是一个滑动窗口的题, 所谓滑动窗口,就是不断的调节子序列的起始位置和终止位置,从而得出我们要想的结果。 在本题中实现滑动窗口,主要确定如下三点: **窗口内是什么?**窗口就是 满足其和 ≥ target 的长度最小的 连续 子数组。 ** ......
数组 长度 LeetCode 209

[Leetcode] 0703.数据流中的第K大元素

703. 数据流中的第 K 大元素 点击上方标题跳转至leetcode 题目描述 设计一个找到数据流中第 k 大元素的类(class)。注意是排序后的第 k 大元素,不是第 k 个不同的元素。 请实现 KthLargest 类: KthLargest(int k, int[] nums) 使用整数 ......
数据流 Leetcode 元素 数据 0703

LeetCode 977. 有序数组的平方

题目链接 :LeetCode 977. 有序数组的平方 本题直接暴力求解就是先求出每个元素平方后的值,再对平方后的值进行排序, 双指针解法 由于数组其实是有序的, 只不过负数平方之后可能成为最大数了。那么数组平方的最大值就在数组的两端,不是最左边就是最右边,不可能是中间。此时可以考虑双指针法了,i指 ......
数组 LeetCode 977

LeetCode 27. 移除元素 题解

题目链接:LeetCode 27. 移除元素 本题大意是要对一个数组进行原地删除数值等于 val 的元素。 双指针算法: 通过一个快指针和慢指针在一个for循环下完成两个for循环的工作。 快指针(p指针):寻找新数组的元素 ,新数组就是不含有目标元素的数组 慢指针(q指针):指向更新 新数组下标的 ......
题解 LeetCode 元素 27

LeetCode 704. 二分查找 题解

##本题考查的就是一个基本的整数二分查找问题 对于整数二分,有单调性一定可以二分,没有单调性的有时候也可以二分。 ##算法思想(分为两种方法): 查找结果是在左边区间的情况 区间被划分为[l,mid]和[mid+1,r] 1、确定分界点,mid=q[(l+r)/2] 2、判断是否满足 是:区间变成[ ......
题解 LeetCode 704

LeetCode 1049. 最后一块石头的重量 II

思路 任何时刻,某个石头的重量永远都是若干石头加减运算的绝对值 如 a-b+c 合并石头都是减法,但仍可能出现+运算符,如 a-(b-c)=a-b+c 任何一种合并方法,最后一个石头的重量都可以表示成一种代数形式,如 a+b-c+d+e+f-g 不是所有的代数形式都可以转换为一种合并方法,如 a+b ......
LeetCode 重量 石头 1049 II

[Leetcode] 0697.数组的度

697. 数组的度 点击上方标题跳转至leetcode 题目描述 给定一个非空且只包含非负数的整数数组 nums,数组的 度 的定义是指数组里任一元素出现频数的最大值。 你的任务是在 nums 中找到与 nums 拥有相同大小的度的最短连续子数组,返回其长度。 示例 1: 输入:nums = [1, ......
数组 Leetcode 0697

LeetCode 416 分割等和子集

LeetCode | 416.分割等和子集 给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 示例 1: 输入:nums = [1,5,11,5] 输出:true 解释:数组可以分割成 [1, 5, 5] 和 [11] 。 示例 ......
子集 LeetCode 416

[Leetcode] 0682. 棒球比赛

682. 棒球比赛 点击上方标题跳转至leetcode 题目描述 你现在是一场采用特殊赛制棒球比赛的记录员。这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分。 比赛开始时,记录是空白的。你会得到一个记录操作的字符串列表 ops,其中 ops[i] 是你需要记录的第 i 项操作,op ......
棒球 Leetcode 0682