- 博客(56)
- 收藏
- 关注
原创 string型,如何用return返回俩个string型
一般而言,return只能返回一个结果,但字符串是一种特殊的数据类型,将俩个字符串连接起来则可以输出俩个了。
2024-06-10 17:09:00
112
原创 代码随想录,总结篇
经过60天的算法训练,我从对数据结构的一无所知,到如今对,二分算法,动态规划,贪心算法等,都有了进一步的了解,与之同时我也明白自己的不足之处在对二叉树和链表等高级结构的学习,还有待提高,期待二刷时,能在进一步深入了解各种算法。
2024-05-21 22:36:24
131
原创 代码随想录,第41天
一个整数,要被拆分为的个数要n>=2,最少为俩个数,这时我们通常使用俩个for循坏从1到n开始拆分,难道如果要拆分为三个数时,我们要使用三个for循环吗?那如果是拆分为无穷多个呢?难道要一直拆分下去,上面代码已经给出了答案。
2024-04-29 18:18:55
36
原创 代码随想录,第39天
62.不同路径 class Solution {public: int uniquePaths(int m, int n) { vector<vector<int>> dp(m, vector<int>(n, 0)); for (int i = 0; i < m; i++) dp[i][0] = 1; for (int j = 0; j < n; j++) dp[0][j] = 1;
2024-04-27 21:50:26
225
原创 代码随想录,第34天
在进行从右到左的遍历之前,我们已经进行了从左到右的遍历,简单的来说,我们在草稿纸上进行模拟的过程也是以从左到右的遍历结果为主,所以在进行从右到左遍历的过程中,要取最大值,既可以满足左遍历,又可以满足右遍历。计算出到每一个加油站的剩余油量是正,还是负,关键还是计算全程的油量总和是正,还是负数。俩种题解,但是如果k的数值过于大,那么第二种,sort解法,还是最优题解。1005.K次取反后最大化的数组和。
2024-04-23 00:45:07
97
原创 代码随想录,第32天,买股票的时机,跳跃游戏等问题
这道题要求的是最少的步骤跳到终点,那么就不可以随意的跳动自己的步数,要根据覆盖范围是否能到达最后的终点,而进一步来决定。思路:将利润平分的每俩天的利润之和,因为每一天既可以买股票,又可以卖股票,要想收获利润最少是第二开始。这道是,只要你能够到达最后的终点,随便你这么跳都是可以的。122.买股票的时机。
2024-04-21 02:08:12
101
原创 代码随想录,第31天,贪心算法之入门,分发饼干,摆动序列,最大子序和
这道题要注意,在单调中的平坡,preDiff = curDiff,这个语句放在if条件判断中,可以有效规避第三种情况的发生。“局部最优”,只要当前的总合为正数,对下一个数的累加就会起到推力的作用。局部最优为,每一块饼干都能满足一个小孩子。
2024-04-20 02:23:42
86
原创 代码随想录,第29天,全排列问题
全排列问题,,相对于组合问题多了,取数的过程可以先前回,而树层去重,可以使用used数组,进行排查,数组的数据使用情况。46.47,全排列问题。
2024-04-17 23:29:35
67
原创 代码随想录,第28天,回溯算法之复原IP地址,子集问题
startIndex>=nums.size(),相比于之前的==,这里要加上>,是因为>,代表着树枝递归的深度,而取==,是因为==,代表着,递归的宽度。这道问题是属于回溯算法中的切割问题,startindex,即为切割线。这道题目与组合问题的最大区别在于,path的路径收集为每一个节点。这道问题涉及树层的去重问题,以及组合问题的总合。
2024-04-16 23:34:25
112
原创 代码随想录,第27天,回溯算法之组合问题2
主要思路:去重的步骤是本题的关键,主要是分清,是树枝去重呢?由一个解题集合中可以出现多个相同的元素可知,去重指的是树层的去重,这时就要引进一个used数组来记录元素的使用情况。题目的快排,由于是vector型的,故要sort(v.begin(),v.end()),而数组则是为sort(数组名,数组大小)//默认情况下为从小到大,如果要进行从大到小,则可以自己编写cmp。主要思路:题目中的元素可以被重复的取值,直到return条件的满足,在进行下一层的递归时,i还是i。
2024-04-16 01:06:35
193
原创 代码随想录,第25天,回溯算法之组合问题(对应leetcode)
主要思路:相对于正常情况下的组合问题,该问题多了一个总值的判断条件。主要思路:找到数字与字母之间的映射关系。17.电话号码的字母组合。216.组合总和111。
2024-04-15 19:07:00
107
原创 代码随想录,第23天,二叉搜索树的构成
将数组进行分割,找到中间值,尤为关键,这时候就可以考虑使用二分搜索,但区间的开闭要确定好。108.将有序数组转化为二叉搜索树。
2024-04-11 22:26:57
98
原创 代码随想录,第22天
主要思路:有效插入的方式有多种,我选择的一种为,不改变原来搜索树的基本结构,在子叶节点进行插入。701.二叉搜索树中插入一个节点。
2024-04-11 00:01:06
312
原创 代码随想录,第19天,二叉搜索树的基本操作
主要思路:关键是如何将俩颗树进行合的操作,只对树1,进行修改。主要思路:采用双指针的思路,在递归的过程中不断返回数值。主要思路:明白什么是搜索树,才是关键。700.二叉搜索树中的搜索。98.验证二叉搜索树。
2024-04-08 22:02:17
64
1
原创 代码随想录,第18天,二叉树的构建
主要思路:将中序和后序遍历进行分割,再分别找到属于二叉树的左右子树的部分。106.从中序与后序遍历序列构造二叉树。
2024-04-06 15:18:43
83
1
原创 代码随想录第17天,二叉树深度问题的求解
主要思路:只有通过父节点,才能判断出,子节点是否为符合条件的左子叶点。主要思路:左右子树高度差不大于一的,被称为平衡二叉树。主要思路:回溯过程是其中的关键(以便储存另一条路径)257.二叉树的所有路径。404.左子叶数之和。
2024-04-06 00:48:23
99
1
空空如也
请问使用贪心算法的求解思路
2024-04-29
TA创建的收藏夹 TA关注的收藏夹
TA关注的人