刷题
文章平均质量分 65
掉了颗兔牙lx
momo
展开
-
二叉树的练习题
思路1:二叉树的递归,则是将某个节点的左子树、右子树看成一颗完整的树,那么对于子树的访问或者操作就是对于原树的访问或者操作的子问题,因此可以自我调用函数不断进入子树。思路2:使用辅助栈来存放每次遍历的根节点,弹出栈顶元素,然后判断该元素是否有左右子节点,有的话的加入栈中,优先加入右节点。给定一个二叉树,返回该二叉树层序遍历的结果,(从左到右,一层一层地遍历)给定的二叉树是{3,9,20,#,#,15,7},给定一个二叉树,返回他的后序遍历的序列。输入:{1,2,#,#,3}输入:{1,#,2,3}.....原创 2022-08-12 22:14:51 · 583 阅读 · 0 评论 -
栈和队列的练习题
第一个栈 push 元素时,当另一个栈中没有元素时将当前插入的元素 push 进去,然后每一次插入元素时两个栈中的栈顶元素进行比较。如果当前插入的元素小于第二个栈的栈顶元素,就将当前元素 push 到第二个栈中,否则就将第二个栈中的栈顶元素重新入栈。处理括号问题,就是将括号中的部分看成一个整体,每次遇到左括号,将括号放入栈中,直到遇到右括号,再计算括号中的部分。所以就可以使用栈来完成,遇到左括号就将相应匹配的右括号加入栈中,后续如果是合法的,右括号的顺序就是栈中弹出的顺序。队列中的元素为int类型。....原创 2022-08-04 19:21:13 · 995 阅读 · 0 评论 -
快慢指针 ——链表 | Leetcode 练习
链表的中间结点给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。返回链表的中间结点可以使用双指针法,也就是快慢指针。创建两个指针,同时从 head 结点出发,满指针走得慢,一次走一步,快指针走得快,等到快指针走到链表的末尾时,满指针刚好走到链表的一半,返回满指针指向的结点就是链表的中间结点。class Solution { public ListNode middleNode(ListNode head) { //.原创 2022-04-24 16:54:10 · 1277 阅读 · 0 评论 -
【二分查找】leetcode练习
二分查找给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。public class Num704 { public int search(int[] nums, int target) { //left指数组下标 int left = 0; int right = nums.length - 1; while.原创 2022-04-01 17:11:03 · 146 阅读 · 0 评论
分享