151.反转字符串中的单词 题目链接:https://leetcode.cn/problems/reverse-words-in-a-string/题目难度:中等文章讲解:https://programmercarl.com/0151.翻转字符串里的单词.html视频讲解:https://www.bilibili.com/video/BV1uT41177fX题目状态:修改后过 个人思路:讨了个巧,使用istringstream分割字符串,在将分割出来的单词依次存放到一个vector<string>里面,最后翻转vector<string>并通过ostringstre...

  3HyMPPhAWYCC   2024年08月07日   39   0   0 算法与数据结构

232.用栈实现队列 题目链接:https://leetcode.cn/problems/implement-queue-using-stacks/题目难度:简单文章讲解:https://programmercarl.com/0232.用栈实现队列.html视频讲解:https://www.bilibili.com/video/BV1nY4y1w7VC题目状态:看视频讲解后通过 思路:通过两个栈来实现队列。 创建两个栈stackIn和stackOut; 当入队的时候,直接把元素入stackIn栈中即可; 当出队的时候,若stackOut中没有元素时,先将stackIn中的元素入stack...

  3HyMPPhAWYCC   2024年08月07日   51   0   0 算法与数据结构

150.逆波兰表达式求值 题目链接:https://leetcode.cn/problems/evaluate-reverse-polish-notation/题目难度:中等文章讲解:https://programmercarl.com/0150.逆波兰表达式求值.html视频讲解:https://www.bilibili.com/video/BV1kd4y1o7on题目状态:多次修改bug后通过 个人思路: 通过栈进行解决。先判断队列中的元素是否为数字类型。若为数字类型,压入栈;若不是数字类型,则肯定是运算符,使用switch结构进行运算,将栈中的头两个元素弹出,进行运算符运算,运算后将...

  3HyMPPhAWYCC   2024年08月07日   26   0   0 算法与数据结构

二叉树的基本知识 链接:https://programmercarl.com/二叉树理论基础.html 要点: 深度优先遍历 前序遍历(递归法,迭代法) 中序遍历(递归法,迭代法) 后序遍历(递归法,迭代法) 广度优先遍历 层次遍历(迭代法) 由于栈就是递归的一种实现结构,因此前中后序遍历的逻辑可以借助栈使用递归的方式来实现。由于队列先进先出的特点,广度优先遍历一般使用队列来实现。 递归的思想: 每次写递归,要按照三要素去写: 确定递归函数的参数和返回值。 确定终止条件。 确定单层递归的逻辑。 下面开始具体的完成算法题目。 144.二叉树的前序遍历 题目链接:https://...

  3HyMPPhAWYCC   2024年08月07日   39   0   0 算法与数据结构

226.翻转二叉树 题目链接:https://leetcode.cn/problems/invert-binary-tree/题目难度:简单文章讲解:https://programmercarl.com/0226.翻转二叉树.html视频讲解:https://www.bilibili.com/video/BV1sP4y1f7q7题目状态:通过 个人思路: 类似二叉树的层序遍历的变形,创建一个队列,先将根节点压入队列中,当该节点压出队列时,若该节点有左右孩子,将该节点的左右孩子进行翻转(swap),并将其左右孩子节点压入队列中,直到队列中没有节点了,整个循环结束,二叉树翻转完成。 代码实现:...

  3HyMPPhAWYCC   2024年08月07日   19   0   0 算法与数据结构

110.平衡二叉树 题目链接:https://leetcode.cn/problems/balanced-binary-tree/题目难度:简单文章讲解:https://programmercarl.com/0110.平衡二叉树.html视频讲解:https://www.bilibili.com/video/BV1Ug411S7my题目状态:通过 思路: 采用递归的方式,遍历每个节点的左右孩子的深度以及其之间的深度差是否超过1,如果超过1的话,就直接返回false,直到遍历结束。 代码实现: / Definitionforabinarytreenode. structTreeNode{ i...

  3HyMPPhAWYCC   2024年08月07日   36   0   0 算法与数据结构

513.找树左下角的值 题目链接:https://leetcode.cn/problems/find-bottom-left-tree-value/题目难度:中等文章讲解:https://programmercarl.com/0513.找树左下角的值.html视频讲解:https://www.bilibili.com/video/BV1424y1Z7pn题目状态:有点思路,但未通过,最后在ChatGPT的帮助下理清了思路,顺利通过 思路: 使用层序遍历的思想,每次遍历到一层时,记录这一层的第一个节点的值,当遍历完整个树之后,记录的就是最后一层的第一个节点的值。 代码实现: / Defini...

  3HyMPPhAWYCC   2024年08月07日   47   0   0 算法与数据结构

654.最大二叉树 题目链接:https://leetcode.cn/problems/maximum-binary-tree/题目难度:中等文章讲解:https://programmercarl.com/0654.最大二叉树.html视频讲解:https://www.bilibili.com/video/BV1MG411G7ox题目状态:有思路,但独立完成有点困难,需要复习昨天学的内容 思路: 和昨天的根据中序和前序构造二叉树的思路一样,就是找到数组中的最大值以及其下标,然后分割数组分别放在二叉树的左孩子树和右孩子树上,进行递归。 代码实现: / Definitionforabinary...

  3HyMPPhAWYCC   2024年08月07日   20   0   0 算法与数据结构

530.二叉搜索树的最小绝对差 题目链接:https://leetcode.cn/problems/minimum-absolute-difference-in-bst/题目难度:简单文章讲解:https://programmercarl.com/0530.二叉搜索树的最小绝对差.html视频讲解:https://www.bilibili.com/video/BV1DD4y11779题目状态:通过 思路: 将二叉搜索树通过递归法的中序遍历压入到一个数组中,通过判断遍历数组中相邻元素之间的差值来选择一个最小的绝对差。 代码实现: / Definitionforabinarytreenode....

  3HyMPPhAWYCC   2024年08月07日   34   0   0 算法与数据结构

235.二叉搜索树的最近公共祖先 题目链接:https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-search-tree/题目难度:中等文章讲解:https://programmercarl.com/0235.二叉搜索树的最近公共祖先.html视频讲解:https://www.bilibili.com/video/BV1Zt4y1F7ww?share_source=copy_web题目状态:和236题的思路一样 思路: 使用递归。 参数和返回值:参数是二叉树root,节点p和q,返回值是节点 终止条件:当该节点为n...

  3HyMPPhAWYCC   2024年08月07日   26   0   0 算法与数据结构

669.修剪二叉搜索树 题目链接:https://leetcode.cn/problems/trim-a-binary-search-tree/题目难度:中等文章讲解:https://programmercarl.com/0669.修剪二叉搜索树.html视频讲解:https://www.bilibili.com/video/BV17P41177ud?share_source=copy_web题目状态:没有思路,看题解过 思路: 使用递归。 参数和返回值:参数是节点,和左右边界,返回值是节点。 终止条件:当节点为nullptr时,终止。 单层循环:当当前节点的值小于最小边界时,将其右孩子...

  3HyMPPhAWYCC   2024年08月07日   31   0   0 算法与数据结构

回溯算法模板 voidbacktracking(参数){ if(终止条件){ 存放结果; return; } for(选择:本层集合中元素(树中节点孩子的数量就是集合的大小)){ 处理节点; backtracking(路径,选择列表);//递归 回溯,撤销处理结果 } } 77.组合 题目链接:https://leetcode.cn/problems/combinations/题目难度:中等文章讲解:https://programmercarl.com/0077.组合.html视频讲解:https://www.bilibili.com/video/BV1ti4y1L7cv题目状态:自己没...

  3HyMPPhAWYCC   2024年08月07日   45   0   0 算法与数据结构

39.组合总和 题目链接:https://leetcode.cn/problems/combination-sum/题目难度:中等文章讲解:https://programmercarl.com/0039.组合总和.html视频讲解:https://www.bilibili.com/video/BV1KT4y1M7HJ题目状态:久违的通过! 思路: 使用回溯模板,在单层循环时判断当前数组值是否大于目标值,若大于,直接跳过,其他思路就是和回溯模板中一样,直接看代码。 代码: classSolution{ public: vector<vector<int>>res; v...

  3HyMPPhAWYCC   2024年08月07日   29   0   0 算法与数据结构

93.复原IP地址 题目链接:https://leetcode.cn/problems/restore-ip-addresses/题目难度:中等文章讲解:https://programmercarl.com/0093.复原IP地址.html视频讲解:https://www.bilibili.com/video/BV1XP4y1U73i/题目状态:好难,看题解通过 思路: 和分割回文串一样,甚至更难,在单层遍历是需要判断其是否为一个合法的IP地址。 代码: classSolution{ private: vector<string>result;//记录结果 //startInd...

  3HyMPPhAWYCC   2024年08月07日   24   0   0 算法与数据结构

977.有序数组的平方 题目建议:本题关键在于理解双指针思想题目链接:https://leetcode.cn/problems/squares-of-a-sorted-array/题目难度:简单文章讲解:https://programmercarl.com/0977.有序数组的平方.html视频讲解:https://www.bilibili.com/video/BV1QB4y1D7ep题目状态:通过 个人思路: 循环平方后使用sort函数,具体代码如下: classSolution{ public: vector<int>sortedSquares(vector<int&...

  3HyMPPhAWYCC   2024年08月07日   53   0   0 算法与数据结构
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~