![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
力扣
stone_fall
程序员+宅男
展开
-
C++秋招刷题 | 动态规划与背包问题
文章目录动态规划斐波那契数列斐波那契数第 N 个泰波那契数丑数丑数Ⅱ杨辉三角杨辉三角杨辉三角Ⅱ爬楼梯爬楼梯最小花费爬楼梯买卖股票买卖股票的最佳时机买卖股票的最佳时机 II最佳买卖股票时机含冷冻期买卖股票的最佳时机含手续费打家劫舍打家劫舍1打家劫舍2背包问题完全背包购物车零钱兑换零钱兑换 II子序列最大和最大子序和环形子数组的最大和回文最长回文子串最长回文子序列递增子序列解码解码方法二叉搜索树不同的二叉搜索树不同的二叉搜索树Ⅱ路径问题下降路径最小和三角形最小路径和不同路径不同路径 II最小路径和最大正方形编辑原创 2021-09-26 10:41:42 · 470 阅读 · 0 评论 -
力扣网 | 高频面试题 | 最长回文子串 | 最长回文子序列
文章目录最长回文子序列题目解析最长回文子串题目解析两道题很相近,区别在于一个是子串,一个是子序列子序列子串最长回文子序列题目最长回文子序列 - 力扣(LeetCode)https://leetcode-cn.com/problems/longest-palindromic-subsequence/解析class Solution {public: int longestPalindromeSubseq(string A) { //dp原创 2021-04-01 08:47:48 · 175 阅读 · 0 评论 -
牛客网 | 每日一题 3-25 | 82. 删除排序链表中的重复元素 II
文章目录题目解析题目存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表中 没有重复出现 的数字。返回同样按升序排列的结果链表。82. 删除排序链表中的重复元素 II - 力扣(LeetCode)解析链表题:舍得用变量,千万别想着节省变量,否则容易被逻辑绕晕head 有可能需要改动时,先增加一个 假head,返回的时候直接取 假head.next,这样就不需要为修改 head 增加一大堆逻辑了。/** * Definition原创 2021-03-25 21:26:23 · 199 阅读 · 0 评论 -
力扣网 | 算法面试题汇总 | 最长公共子序列
文章目录题目解析题目1143. 最长公共子序列给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列的长度。一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace" 是 "abcde" 的子序列,但 "aec" 不是 "abcde" 的子序列。两个字符串的「公共子序列」是这两个字符串所共同拥有的子序列。若这两个字符串没有公共子序列,则返回 0。解析dpclas原创 2021-03-06 18:34:37 · 119 阅读 · 0 评论 -
力扣网 | 算法面试题汇总 | 字符串 | 字符串拼接 Ⅱ
文章目录题目解析题目算法面试题汇总 - LeetBook - 力扣(LeetCode)全球极客挚爱的技术成长平台https://leetcode-cn.com/leetbook/read/top-interview-questions/xa9v8i/给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,在字符串中增加空格来构建一个句子,使得句子中所有的单词都在词典中。返回所有这些可能的句子。说明:分隔时可以重复使用字典中的单词。你可以假设字典中没有重复的单词。示例 1:原创 2021-01-19 17:38:00 · 231 阅读 · 0 评论 -
力扣网 | 算法面试题汇总 | 字符串 | 单词拆分
文章目录题目题解题目算法面试题汇总 - LeetBook - 力扣(LeetCode)全球极客挚爱的技术成长平台https://leetcode-cn.com/leetbook/read/top-interview-questions/xa503c/给定一个非空字符串 s 和一个包含非空单词的列表 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。说明:拆分时可以重复使用字典中的单词。你可以假设字典中没有重复的单词。示例 1:输入: s = "leetco原创 2021-01-16 13:43:25 · 533 阅读 · 0 评论 -
力扣网 | 算法面试题汇总 | 字符串 | 分割回文串
文章目录题目解析题目分割回文串算法面试题汇总 - LeetBook - 力扣(LeetCode)全球极客挚爱的技术成长平台解析class Solution { vector<vector<string>> res; vector<string> path;public: void backtracking(const string s,int startindex){ //判出 if(startindex&g原创 2021-01-15 09:36:52 · 171 阅读 · 0 评论 -
力扣网 | 算法面试题汇总 | 字符串 | 验证回文串
文章目录题目解析方法一:利用额外空间保存转化后的结果方法二:在原字符串上比较题目解析方法一:利用额外空间保存转化后的结果tolower() 将字符传化成小写isalnum() 判断字符是否是字母或数字class Solution {public: bool isPalindrome(string s) { string shandled;//用来存储转化后的字符与小写字母 for(auto c:s){ if(isalnum(c原创 2021-01-12 09:27:08 · 160 阅读 · 0 评论 -
力扣网 | 算法面试题汇总 | 开始之前 | 鸡蛋掉落
文章目录题目解析题目算法面试题汇总 - LeetBook - 力扣(LeetCode)全球极客挚爱的技术成长平台你将获得 K 个鸡蛋,并可以使用一栋从 1 到 N 共有 N 层楼的建筑。每个蛋的功能都是一样的,如果一个蛋碎了,你就不能再把它掉下去。你知道存在楼层 F ,满足 0 <= F <= N 任何从高于 F 的楼层落下的鸡蛋都会碎,从 F 楼层或比它低的楼层落下的鸡蛋都不会破。每次移动,你可以取一个鸡蛋(如果你有完整的鸡蛋)并把它从任一楼层 X 扔下(满足 1 <原创 2021-01-07 11:43:30 · 442 阅读 · 0 评论 -
力扣网/牛客网 | 算法面试题汇总 | 合并两个有序数组
文章目录题目解析双指针-从前往后遍历从前往后-空间换时间从后往前遍历题目算法面试题汇总 - LeetBook - 力扣(LeetCode)全球极客挚爱的技术成长平台给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。 说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。 示例:输入:原创 2021-01-06 09:49:53 · 183 阅读 · 0 评论 -
力扣网 | 算法面试题汇总 | 开始之前 | 搜索二维矩阵 II
文章目录题目解析暴力剪枝二分法题目算法面试题汇总 - LeetBook - 力扣(LeetCode)全球极客挚爱的技术成长平台解析暴力class Solution {public: bool searchMatrix(vector<vector<int>>& matrix, int target) { int m = matrix.size(), n = matrix[0].size(); for(int i=0;i<原创 2021-01-05 09:23:26 · 137 阅读 · 0 评论 -
力扣网 | 算法面试题汇总 | 开始之前 | LC 多数元素
文章目录题目解析题目给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1:输入:[3,2,3]输出:3示例 2:输入:[2,2,1,1,1,2,2]输出:2 进阶:尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。解析class Solution {public: int majorityElement(ve原创 2021-01-02 12:26:38 · 170 阅读 · 0 评论 -
力扣网 | 算法面试题汇总 | 开始之前 | LC 只出现一次的数字
文章目录题目解析题目 LC 只出现一次的数字给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4解析异或运算,得到结果。利用异或运算的交换律、结合律、自反率a^b^a = bclass Solution {public: int singleN原创 2021-01-02 12:09:28 · 144 阅读 · 0 评论 -
力扣网 | 每日打卡题 |188. 买卖股票的最佳时机 IV
文章目录题目解析题目188. 买卖股票的最佳时机 IV解析在这里插入代码片原创 2020-12-29 09:02:14 · 270 阅读 · 0 评论 -
牛客网 | 高频面试题 | 子数组的最大累加和问题
文章目录题目解析题目子数组的最大累加和问题_牛客网解析用cur记录当前数组和(只要cur大于0,就对求最大累加和有正向的贡献)arrmax记录最大curclass Solution {public: /** * max sum of the subarray * @param arr int整型vector the array * @return int整型 */ int maxsumofSubarray(vector<int&原创 2020-12-27 11:41:46 · 167 阅读 · 0 评论 -
力扣网 | 每日打卡题 | 205. 同构字符串
文章目录题目解析哈希官方解答-哈希题目205. 同构字符串 - 力扣(LeetCode)解析哈希笨拙的方式通过两个hash记录状态。charmap记录字符替换方案charintmap确保两个字符不能映射到同一个字符上class Solution {public: bool isIsomorphic(string s, string t) { int lens=s.size(),lent=t.size(); if(lens!=lent)retur原创 2020-12-27 10:28:17 · 148 阅读 · 0 评论 -
力扣网 | 每日打卡题 | 455. 分发饼干 | 圣诞节的饼干
文章目录题目解析题目455. 分发饼干 - 力扣(LeetCode)解析分发饼干 - 分发饼干 - 力扣(LeetCode)class Solution {public: int findContentChildren(vector<int>& g, vector<int>& s) { sort(g.begin(), g.end()); sort(s.begin(), s.end()); int nu原创 2020-12-25 14:47:44 · 149 阅读 · 0 评论 -
力扣网 | 每日打卡题 | 387. 字符串中的第一个唯一字符
文章目录题目解析题目387. 字符串中的第一个唯一字符 - 力扣(LeetCode)解析用map记录每个元素c出现的位置,并且如果元素c重复出现令map[c]=-1最后遍历map返回第一个value非-1的元素c的位置class Solution {public: int firstUniqChar(string s) { unordered_map<char,int> c2imap; for(int i=0;i<s.size();原创 2020-12-23 09:11:36 · 210 阅读 · 0 评论 -
力扣网 | 每日打卡题 | 103. 二叉树的锯齿形层序遍历
文章目录题目解析层次遍历——翻转记录数组官方解答——双向队列deque题目103. 二叉树的锯齿形层序遍历 - 力扣(LeetCode)解析层次遍历——翻转记录数组用levelsize记录每层的节点数;用vtmp正常遍历顺序记录每层节点;用flag记录单双层,用于翻转vtmp;/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; *原创 2020-12-22 08:57:29 · 180 阅读 · 0 评论 -
力扣网 | 每日打卡题 | 746. 使用最小花费爬楼梯
文章目录题目解析动态规划题目746. 使用最小花费爬楼梯 - 力扣(LeetCode)解析动态规划爬楼梯!class Solution {public: int minCostClimbingStairs(vector<int>& cost) { int a=0,b=0,sum=0,len=cost.size(); for(int i=2;i<=len;i++){ sum=min(a+cost[i-2],原创 2020-12-21 10:00:51 · 110 阅读 · 0 评论