• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






Sunshineboy1

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理
上一页 1 2 3 4 5 下一页

2020年7月29日

二叉树知识点总结
摘要: 二叉树:二叉树汇中每一个节点最多只能有两个子节点 二叉树有三种遍历方式: 前序遍历:先访问根节点-》左子节点-》右子节点 中序遍历:左子节点-》根节点-》右子节点 后序遍历:左子节点-》右子节点-》根节点 树的遍历有两类: 深度优先遍历: 先根遍历:包括前、中、后序遍历(先访问树的根节点) 后根遍历 阅读全文
posted @ 2020-07-29 21:29 Sunshineboy1 阅读(196) 评论(0) 推荐(0)
 
leetcode-17-电话号码的字母组合
摘要: 思路: 每个数字对应的三个或者四个字母,输入的digits可能是几位数字组成 1.for(auto u:digits) 遍历digits中的数字,获取每一个单独的数字码 2. for(auto c:chars[ ]) 根据数字码遍历得到对应的字母 3. for(auto s:state) 对字母进行 阅读全文
posted @ 2020-07-29 11:05 Sunshineboy1 阅读(131) 评论(0) 推荐(0)
 

2020年7月28日

leetcode-236-二叉树公共祖先
摘要: 思路: 公共祖先需要分为三种情况: 1.pq包含在root的左右子树中,则root就是他们公共祖先 2.pq包含在root的右子树中,则公共祖先是右子树 3.pq包含在root的左子树中,则公共祖先在左子树 代码: /** * Definition for a binary tree node. * 阅读全文
posted @ 2020-07-28 15:37 Sunshineboy1 阅读(77) 评论(0) 推荐(0)
 
leetcode-102-二叉树的层序遍历
摘要: 思路: 按照层遍历,想到用queue 将root和左右子树节点放入queue 中,root 放入第一层容器,左右子树放入第二层容器 继续遍历子树,直到左右子树都未null 代码: 1 /** 2 * Definition for a binary tree node. 3 * struct Tree 阅读全文
posted @ 2020-07-28 14:59 Sunshineboy1 阅读(173) 评论(0) 推荐(0)
 
leetcode-105-从前序与中序遍历序列构造二叉树
摘要: 思路: preorder 的第一个数就是root inorder 中root值前后分别是左子树和右子树 代码: /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * Tr 阅读全文
posted @ 2020-07-28 14:29 Sunshineboy1 阅读(109) 评论(0) 推荐(0)
 

2020年7月27日

leetcode-94-二叉树的中序遍历
摘要: 思路: 中序:左->根->右 1.需要一个建立一个栈,首先将左子树放入栈中 2.获取栈顶元素并进行节点判断是否有右子树 3. 代码: /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode  阅读全文
posted @ 2020-07-27 18:45 Sunshineboy1 阅读(66) 评论(0) 推荐(0)
 
leetcode-98-验证二叉搜索树
摘要: 思路: 1.使用DFS遍历整颗树 2.二叉树的根节点的范围为INT_MIN,INT_MAX. 3.对于当前节点判断是否合法,合法条件:先遍历左子树的最大值是否小于当前节点的值,在遍历右子树,右子树的最小值是否大于当前节点的值 注意: 根节点的边界为 INT_MIN,INT_MAX 左子树的范围:lo 阅读全文
posted @ 2020-07-27 10:46 Sunshineboy1 阅读(70) 评论(0) 推荐(0)
 

2020年7月26日

leescode-160-相交链表
摘要: 思路: 1.两个链表都是单链表,所以不存在环的情况 2.将两个链表的头分别开始遍历,一个链表遍历完后又遍历另一个链表,如果有相交,两次遍历必然会得到相交节点。 代码: /** * Definition for singly-linked list. * struct ListNode { * int 阅读全文
posted @ 2020-07-26 14:55 Sunshineboy1 阅读(96) 评论(0) 推荐(0)
 
剑指offer-二维数组中的查找
摘要: 思路: 1.分析二维数组特点为每行每列都是递增元素 2.从对角找到规律为只要最右边上角的元素大于target,横坐标-1,否则纵坐标-1,若没有找到false 代码: class Solution {public: bool searchArray(vector<vector<int>> array 阅读全文
posted @ 2020-07-26 08:58 Sunshineboy1 阅读(69) 评论(0) 推荐(0)
 

2020年7月21日

leetcode-5-longest palindromic substring
摘要: 思路: 将长字符串分为奇数和偶数来处理 若为奇数-利用双指针从中间往两边移动,最后 截取对应片段对比放入res 中(偶数指针起始位置不同) 代码: class Solution { public: string longestPalindrome(string s) { string res; fo 阅读全文
posted @ 2020-07-21 10:24 Sunshineboy1 阅读(78) 评论(0) 推荐(0)
 
上一页 1 2 3 4 5 下一页