摘要: 思路 令待交换的两个数为“小数”和“大数” 1. 从后往前找第一个升序对i,j使得nums[i]<nums[j]。“小数”就是nums[i]。此时[j,end)必然是降序 2. 再从后往前找一个比“小数”大的数作为“大数”,交换二者 3. 交换后将“大数”后的所有数重新排为升序:此时[j,end]仍 阅读全文
posted @ 2025-02-23 17:37 NeroMegumi 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 回溯 分割回文串 思路 回溯模板:每次传入起始位置,for循环遍历不同子串,若子串回文则递归;直到起始位置==s.size() 代码 class Solution { public: vector<vector<string>> result; vector<string> path; void b 阅读全文
posted @ 2025-02-21 11:46 NeroMegumi 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 一、堆的基本操作 以大根堆为例 包括——初始化堆、调整堆、插入元素和删除元素 对应时间复杂度为O(n)(自底向上建堆),O(logn),O(logn),O(logn) 插入操作:先将新元素添加到堆的末尾;如果它比父节点更大则交换,直到更小。 删除操作是:把堆顶和堆底元素交换,然后再调整[堆顶,堆底前 阅读全文
posted @ 2025-02-18 11:52 NeroMegumi 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 一、回溯算法能解决如下问题: 组合问题:N个数里面按一定规则找出k个数的集合 排列问题:N个数按一定规则全排列,有几种排列方式 切割问题:一个字符串按一定规则有几种切割方式 子集问题:一个N个数的集合里有多少符合条件的子集 棋盘问题:N皇后,解数独等等 二、回溯法的模板: void backtrac 阅读全文
posted @ 2025-02-11 11:20 NeroMegumi 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 思路 每个腐烂橘子向四周感染一次,直到没有新鲜橘子所需的最少时间。其中一定设计图的遍历,那么是DFS还是BFS?因为要求一层层感染完的最少时间,所以用BFS。即把腐烂橘子放入队列,每次感染一波出队,再把新感染的入队,直到所有腐烂橘子都向四周感染过一次。 为了判断是否有橘子永远不会被感染,还要记录一开 阅读全文
posted @ 2025-02-10 09:14 NeroMegumi 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 单调栈 要求「从 栈顶 到 栈底 的元素是单调递增(或者单调递减)」。其中满足从栈顶到栈底的元素是单调递增的栈,叫做「单调递增栈」。满足从栈顶到栈底的元素是单调递减的栈,叫做「单调递减栈」。(有的文章是从栈底到栈顶,本文默认从栈顶到栈底) 怎么能想到用单调栈呢? 什么时候用单调栈呢? 通常是一维数组 阅读全文
posted @ 2025-02-05 10:30 NeroMegumi 阅读(4) 评论(0) 推荐(0) 编辑
摘要: https://www.programmercarl.com/动态规划-股票问题总结篇.html#买卖股票的最佳时机含手续费 只能买一次 不断更新最小买入值,不断更新profit=prices[i]-buy 可以买卖多次 动态规划 - 定义dp数组 dp[i][1],dp[i][0]分别表示第i天持 阅读全文
posted @ 2025-01-23 09:39 NeroMegumi 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 这道题目是 打家劫舍 III(House Robber III),是打家劫舍系列问题的变种。问题描述如下: 小偷发现了一个新的区域,这个区域的所有房屋排列类似于一棵二叉树。如果两个直接相连的房屋在同一晚被打劫,房屋会自动报警。给定这棵二叉树的根节点 root,求在不触发警报的情况下,小偷能够盗取的最 阅读全文
posted @ 2025-01-20 12:05 NeroMegumi 阅读(5) 评论(0) 推荐(0) 编辑
摘要: https://www.programmercarl.com/背包总结篇.html#听说背包问题很难-这篇总结篇来拯救你了 阅读全文
posted @ 2025-01-19 16:00 NeroMegumi 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 这道题用代码随想录的解释有点牵强,第二层for循环和递推公式也没有说明白。 代码 class Solution { public: bool wordBreak(string s, vector<string>& wordDict) { unordered_set<string> set(wordD 阅读全文
posted @ 2025-01-19 15:54 NeroMegumi 阅读(4) 评论(0) 推荐(0) 编辑