
算法
文章平均质量分 58
code七
这个作者很懒,什么都没留下…
展开
-
回溯法思路总结【以Leetcode 78.子集、90. 子集II、22. 括号生成为例】【C++】
【以Leetcode 78.子集、22. 括号生成和90. 子集II为例】 基本思想:按一定路径遍历问题的所有可能结果,当路径符合要求时将得到的路径加入结果集后,回溯至上一步继续向后遍历。常用递归的方法实现代码。 特点:当遇到需要得到所有可能结果而非结果个数的问题时可考虑使用。 存在的问题:使用递归,若代码书写不规范或不够清晰时,可能需要耗费大量时间进行代码调试。 解决方法:画递归树,思考人是怎么做的,找出共性规律。 规范写法(C++): Void backtrack(& nums, &原创 2022-02-28 17:21:03 · 416 阅读 · 0 评论 -
【C语言】【8ms】Leetcode 1.两数之和
/** * Note: The returned array must be malloced, assume caller calls free(). */ int cmp(const void* a, const void* b) { return (*(int*)a - *(int*)b); } int* twoSum(int* nums, int numsSize, int target, int* returnSize) { //先排序,然后前后找 int * s..原创 2021-10-30 16:04:43 · 3200 阅读 · 0 评论 -
【C语言】Leetcode 53.最大子序和
开始刷Leetcode,感觉自己能力还是不足啊。。。基础不扎实,好多都忘记了,要好好补一下 目录 题目描述 我最初的思路 贪心 动态规划 题目描述 【简单题】给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 我最初的思路 遍历数组,在O(n)时间内对每个位置计算从前面到此处的最大子序和,分别计算前面的最大子序和+当前数值,除掉之前最大子序头的子序和和前面的最大子序和,对这三者进行比较,依条件操作。 但这一思路...原创 2021-10-30 00:01:42 · 4323 阅读 · 0 评论