05 2022 档案
摘要:动态规划 动态规划问题的一般形式就是求最值。 比如说让你求最长递增子序列呀,最小编辑距离呀等等。 求解动态规划的核心问题是穷举。因为要求最值,肯定要把所有可行的答案穷举出来,然后在其中找最值呗。 动态规划问题一定会具备「最优子结构」,才能通过子问题的最值得到原问题的最值。 重叠子问题、最优子结构、状
阅读全文
摘要:数组的遍历 for/while 有进无出,所以只有前序位置。只适用于元素是固定的情况。 // 数组的while/for遍历 function arr_traverse(arr){ for(let i=0; i<arr.length; i++){ console.log(arr[i]); // 前序位
阅读全文
摘要:无论是排列、组合还是子集问题,简单说无非就是让你从序列 nums 中以给定规则取若干元素,主要有以下几种变体: 形式一、元素无重不可复选,即 nums 中的元素都是唯一的,每个元素最多只能被使用一次,这也是最基本的形式。 以组合为例,如果输入 nums = [2,3,6,7],和为 7 的组合应该只
阅读全文
摘要:冒泡排序 比较相邻的两个元素,如果前一个比后一个大,则交换位置。第一轮把最大的元素放到了最后面。由于每次排序最后一个都是最大的,所以之后按照步骤1排序最后一个元素不用比 function bubble_sort(arr) { for (let i = 0; i < arr.length; i++)
阅读全文