TypechoJoeTheme

Toasobi的博客

搜索到 19 篇与 的结果 ———
2023-09-14

删除二叉搜索树的节点

删除二叉搜索树的节点
根据二叉搜索树的性质:如果目标节点大于当前节点值,则去右子树中删除;如果目标节点小于当前节点值,则去左子树中删除;如果目标节点就是当前节点,分为以下三种情况:其无左子:其右子顶替其位置,删除了该节点;其无右子:其左子顶替其位置,删除了该节点;其左右子节点都有:其左子树转移到其右子树的最左节点的左子树上,然后右子树顶替其位置,由此删除了该节点。第三种情况图示如下:代码如下:class Solution { public TreeNode deleteNode(TreeNode root, int key) { if (root == null)return null; if (key > root.val) root.right = deleteNode(root.right, key); // 去右子树删除 else if(key < root.val) root.left = deleteNode(root.left, key); // 去左子树删除...
2023-09-14

经典例题

0 阅读
0 评论
2023年09月14日
0 阅读
0 评论
2023-09-05

Excel表列名称(进制转换问题)

Excel表列名称(进制转换问题)
题目:给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称。例如:A -> 1B -> 2C -> 3...Z -> 26AA -> 27AB -> 28 ...思路:这是一道进制转换题,26一轮,用十进制数表示,所以是一道十进制转26进制问题 需要十分注意的点是:本题需要我们将从1开始,我们需要使用-1 熨平取模的问题。 因为x%26=[0,25] 但是我们取从[1-26]对应[A-Z] 直接取模 26%26=0 不在我们范围内 所以我们采用-1 [0-25]对应[A-Z] (26-1)%26 =25 25+'A'='Z'代码:class Solution { public String convertToTitle(int columnNumber) { StringBuilder sb = new StringBuilder(); while (columnNumber > 0) { columnNumber...
2023-09-05

经典例题

0 阅读
0 评论
2023年09月05日
0 阅读
0 评论