刷题总结
zj134_
以物喜
展开
-
LeetCode题目总结(包含其他)
文章目录数组数组重复元素系列字符串滑动窗口回溯动态规划股票系列数组数组重复元素系列LeetCode第 645 题:错误的集合(C++)_zj-CSDN博客LeetCode第 26 题:删除排序数组中的重复项(C++)_zj-CSDN博客LeetCode第 217 题:存在重复元素(C++)_zj-CSDN博客LeetCode第 219 题:存在重复元素 II(C++)_zj-CSDN博客LeetCode第 27 题:移除元素(C++)_zj-CSDN博客LeetCode第 283 题:移动零原创 2020-10-02 02:17:45 · 942 阅读 · 0 评论 -
动态规划刷题总结
文章目录什么样的问题适合动态规划动态规划的步骤状态定义状态转移状态边界处理编写代码空间优化什么样的问题适合动态规划数据结构与算法:41 |动态规划理论:最优子结构、无后效性和重复子问题_zj-CSDN博客一个模型:多阶段决策最优解模型,重点在于多阶段,每个阶段都对应着不同的状态三个特征:最优子结构,无后效性,重复子问题。主要抓住最优子结构这一特征,理解为后面的阶段状态可以由前面的阶段状态推导而来。动态规划的步骤状态定义首先应该思考怎么样把原问题划分为多个阶段,然后判断我们是需要一维的状态还是二原创 2020-08-21 14:19:40 · 359 阅读 · 0 评论 -
动态规划背包问题总结
文章目录概念的区别0-1背包二维dp一维dp完全背包二维dp一维dp参考:背包九讲(度娘自行搜索)概念的区别题目的详细阐述就不说了,可以到:题库 - AcWing去看。只需要明白一点,0-1背包的每个物品只有选 / 不选两种选项,而完全背包的每个物品数量无限,想选多少个都可以。0-1背包先举个0-1背包的例子:494. 目标和 - 力扣(LeetCode)这道题并不是直白的0-1背包问题,需要先转化一下:所有的数先分成两种:符号为正的数的总和设为一个背包的容量x,符号为负的数的总和设原创 2020-08-24 13:53:50 · 1359 阅读 · 0 评论 -
链表排序总结(全)(C++)
文章目录链表排序与数组排序的区别借助外部空间冒泡排序插入排序归并排序快速排序链表排序与数组排序的区别数组的排序几乎所有人都很熟悉了,常用的算法插入、冒泡、归并以及快排等都会或多或少依赖于数组可以在O(1)时间随机访问的特点。链表排序一般指单链表排序,链表是不支持随机访问的,需要访问后面的节点只能从表头顺序遍历,所以链表的排序是一个相对比较复杂的问题。那么怎样进行链表排序呢?借助外部空间既然数组排序简单,那可以借助数组进行排序:把链表中的值一次遍历导入数组(时间复杂度O(n))对数组进行排序原创 2020-07-18 15:17:48 · 24422 阅读 · 1 评论