随笔分类 -  剑指offer

摘要:数组中数字出现的次数 题目: 在一个数组 nums 中除一个数字只出现一次之外,其他数字都出现了三次。请找出那个只出现一次的数字。 思路: HashMap键值对<存放的数字,该数字出现的次数> 题解: class Solution { public int singleNumber(int[] nu 阅读全文
posted @ 2020-04-19 13:37 杨小星儿 阅读(77) 评论(0) 推荐(0)
摘要:反转链表 题目描述: 定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 思路: 一、双指针迭代 设置一个pre节点开始指向null,cur节点指向当前节点,反转整个链表就是用当前节 阅读全文
posted @ 2020-04-19 10:34 杨小星儿 阅读(99) 评论(0) 推荐(0)
摘要:递归删除二叉搜索树 思路: 要删除的节点为叶子节点,可以直接删除。 要删除的几点不是叶子节点且拥有右节点,则该节点可以由该节点的后继节点进行替代,该后继节点位于右子树中较低的位置。然后可以从后继节点的位置递归向下操作以删除后继节点。 要删除的节点不是叶子节点,且没有右节点但是有左节点。这意味着它的后 阅读全文
posted @ 2020-04-01 18:38 杨小星儿 阅读(226) 评论(0) 推荐(0)
摘要:package com.cskaoyan.bst; import sun.reflect.generics.tree.Tree; import javax.swing.text.AsyncBoxView; import java.util.ArrayList; import java.util.Li 阅读全文
posted @ 2020-04-01 18:38 杨小星儿 阅读(167) 评论(0) 推荐(0)
摘要:二叉搜索树的范围和 题目: 给定二叉搜索树的根结点 root,返回 L 和 R(含)之间的所有结点的值的和。 二叉搜索树保证具有唯一的值。 思路: 我们对树进行深度优先搜索,对于当前节点 node,如果 node.val 小于等于 L,那么只需要继续搜索它的右子树;如果 node.val 大于等于 阅读全文
posted @ 2020-04-01 18:37 杨小星儿 阅读(117) 评论(0) 推荐(0)
摘要:累加树 /** * 给定一个二叉搜索树(Binary Search Tree), * 把它转换成为累加树(Greater Tree), * 使得每个节点的值是原来的节点值加上所有大于它的节点值之和。 */ public class GreaterTree{ public class TreeNode 阅读全文
posted @ 2020-03-30 22:05 杨小星儿 阅读(1593) 评论(0) 推荐(1)