方法三:树状数组Binary Indexed Tree [树状数组] 详解树状数组, 包含更新查询图解, 秒懂lowbit含义(JAVA 65ms, 68.6MB) - 区域和检索 - 数组可修改 - 力扣(LeetCode) BIT 具有如下两个基本函数: add ,数组中某点加上val 2. prefixSum:求前n项和 核心:x & (-x) 找到x的二进制数的最后一个1所表示的...
所以,工作上的需求与目标职业的要求,都促使我要去检查自己SQL的知识储备与学习MySQL。面对MySQL的书籍我选择了先检查自己的SQL知识储备——在LeetCode上刷题。但是我不想刷完题就结束,想把每道题的思路、其他人的更好的方法记录下来,因此有了这篇文章。 由于个人知识储备还不足,所以难免出现一些问题,或...
昨天动态规划:关于01背包问题,你该了解这些!中是用二维dp数组来讲解01背包。今天我们就来说一说滚动数组,其实在前面的题目中我们已经用到过滚动数组了,就是把二维dp降为一维dp,一些录友当时还表示比较困惑。那么我们通过01背包,来彻底讲一讲滚动数组!接下来还是用如下这个例子来进行讲解背包最大重量为4。
https://leetcode.com/problems/partition-labels/ https://leetcode.com/problems/magical-string/ https://leetcode.com/problems/friends-of-appropriate-ages/ https://leetcode.com/problems/longest-mountain-in-array/ https://leetcode.com/problems/shortest-subarray-to-be-removed-to-make-array-sorted/ ...
Leetcode 123 这才是boss 题,题目的难度比前面两道题大的多。题目的意思就是,你最多可以买两支股票,但是你的手上每一时刻最多只能持有一支股票,你该怎么买,才能使得收益最大? Thinking 就像第一题中分析的那样,找到一支收益最大的股票非常容易,买两支股票收益最大化,一定会和收益最大的那支股票相关: ...
尝试更多
leetcode3: 无重复字符的最长子串](https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/ 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例1:输入: "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出:...
62Unique Paths](https://leetcode.com/problems/unique-paths/)MediumSolution.java 64Minimum Path Sum](https://leetcode.com/problems/minimum-path-sum/)MediumSolution.java 70Climbing StairsEasySolution.java 72Edit DistanceMediumSolution.java 73Set Matrix ZeroesMediumSolution.java ...
https://leetcode-cn.com/problems/middle-of-the-linked-list/ 给定一个带有头结点 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4,5]) ...
classSolution {public:intcountSubstrings(strings) {intlength =s.size();intres =0; vector<vector<bool>> dp(length+1,vector<bool>(length+1,false));for(inti =1;i <= length;i++){for(intj =1;j <= i;j++){if(s[i-1] == s[j-1]){if(i -j <=1|| dp[i-1][j+1]){ ...