![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
刷题
文章平均质量分 75
你这家伙
这个作者很懒,什么都没留下…
展开
-
从上到下打印二叉树的三种题型
从上到下打印二叉树(一)也就是我们所熟知的层序遍历思路分析:1.首先它需要返回的是一个数组,那么我们首先要做的就是new一个数组,而数组的大小需要我们遍历这棵二叉树计算出来2. 当我们申请完数组之后,然后借助队列来完成层序遍历3. 首先将根节点放进去,然后当队列不为空的时候,定义一个cur记录这个节点,然后每弹出一个元素,就放进数组里面4. 然后再判断这个节点的左节点和右节点是否不为空,当不为空的时候放进队列//首先获取这棵树有多少个节点 public int getSize(T原创 2021-08-26 11:06:49 · 205 阅读 · 0 评论 -
相关二叉树习题整理
题目描述:给定一棵树的前序遍历 preorder 与中序遍历 inorder。请构造二叉树并返回其根节点。示例一:Input: preorder = [3,9,20,15,7], inorder = [9,3,15,20,7]Output: [3,9,20,null,null,15,7]示例 2:Input: preorder = [-1], inorder = [-1]Output: [-1]思路分析:首先判断数组是否为空,如果有一个为空那么就直接返回null.遍历前序遍历的数组原创 2021-08-25 12:15:16 · 150 阅读 · 0 评论 -
不积跬步无以至千里—day2
两数相加(链表相加)给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。解题思路:首席按定义一个新链表的虚拟头节点,在定义一个cur每次指向新链表的尾节点,在定义一个carry表示进位其次遍历 l1 和 l2 ,每次拿到 l1 和 l2 的值,因为存在一个链表长一个链表短的情况,所以当遇到链表走到空的时候,就让他的值原创 2021-08-11 00:11:29 · 261 阅读 · 0 评论 -
不以跬步无以致千里——Day1
反转链表题目面试描述:输入一个链表,反转链表后,输出新链表的表头。示例1输入:{1,2,3}返回值:{3,2,1}解题分析:1.定义一个前驱节点pre,初始值为null,在定义一个cur指向head2.pre为cur的前驱节点,反转也就是让cur的下一个指向pre3.但是如果cur的next直接指向pre的话,那么cur后面的链表就无法找到了4.所以此时还需要一个临时节点tmp来每次保存cur的next的值5.然后每次当cur的next指向pre之后,之后就让pre=cur,cur原创 2021-08-09 23:55:55 · 60 阅读 · 0 评论