摘要: 给定一个非空的树,树根为 R。 树中每个节点 Ti 的权重为 Wi。 从 R 到 L 的路径权重定义为从根节点 R 到任何叶节点 L 的路径中包含的所有节点的权重之和。 现在给定一个加权树以及一个给定权重数字,请你找出树中所有的权重等于该数字的路径(必须从根节点到叶节点)。 例如,我们考虑下图的树, 阅读全文
posted @ 2023-04-21 23:39 回忆、少年 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 通过使用栈可以以非递归方式实现二叉树的中序遍历。 例如,假设遍历一个如下图所示的 6 节点的二叉树(节点编号从 1 到 6)。 则堆栈操作为:push(1); push(2); push(3); pop(); pop(); push(4); pop(); pop(); push(5); push(6 阅读全文
posted @ 2023-04-21 23:05 回忆、少年 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 二叉搜索树 (BST) 递归定义为具有以下属性的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值 若它的右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值 它的左、右子树也分别为二叉搜索树 完全二叉树 (CBT) 定义为除最深层外的其他层的结点数都达到最大个数,最深层 阅读全文
posted @ 2023-04-21 20:52 回忆、少年 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 假设一个二叉树上所有结点的权值都互不相同。 我们可以通过后序遍历和中序遍历来确定唯一二叉树。 也可以通过前序遍历和中序遍历来确定唯一二叉树。 但是,如果只通过前序遍历和后序遍历,则有可能无法确定唯一二叉树。 现在,给定一组前序遍历和后序遍历,请你输出对应二叉树的中序遍历。 如果树不是唯一的,则输出任 阅读全文
posted @ 2023-04-21 20:23 回忆、少年 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 二叉搜索树 (BST) 递归定义为具有以下属性的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于或等于它的根结点的值 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值 它的左、右子树也分别为二叉搜索树 将一系列数字按顺序插入到一个空的二叉搜索树中,然后,请你计算结果树的最低两层的 阅读全文
posted @ 2023-04-21 20:22 回忆、少年 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 给定一个树,请你判断它是否是完全二叉树。 输入格式 第一行包含整数 N,表示树的结点个数。 树的结点编号为 0∼N−1。 接下来 N 行,每行对应一个结点,并给出该结点的左右子结点的编号,如果某个子结点不存在,则用 - 代替。 输出格式 如果是完全二叉树,则输出 YES 以及最后一个结点的编号。 如 阅读全文
posted @ 2023-04-21 20:20 回忆、少年 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 供应链是由零售商,经销商和供应商构成的销售网络,每个人都参与将产品从供应商转移到客户的过程。 整个销售网络可以看作一个树形结构,从根部的供应商往下,每个人从上一级供应商中买入商品后,假定买入价格为 P,则会以高出买入价 r% 的价格向下出售。 只有零售商(即叶节点)可以直接将产品销售给顾客。 现在, 阅读全文
posted @ 2023-04-21 20:20 回忆、少年 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 以下是来自 Max Howell @twitter 的内容: 谷歌:我们的百分之九十的工程师都使用你编写的软件,但是你连在白板上反转二叉树都做不到,还是滚吧。 现在,请你证明你会反转二叉树。 输入格式 第一行包含一个整数 N,表示树的结点数量。 所有结点编号从 0 到 N−1。 接下来 N 行,每行 阅读全文
posted @ 2023-04-21 20:17 回忆、少年 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 二叉搜索树 (BST) 递归定义为具有以下属性的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值 若它的右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值 它的左、右子树也分别为二叉搜索树 给定二叉树的具体结构以及一系列不同的整数,只有一种方法可以将这些数填充到树中, 阅读全文
posted @ 2023-04-21 20:15 回忆、少年 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 供应链是由零售商,经销商和供应商构成的销售网络,每个人都参与将产品从供应商转移到客户的过程。 整个销售网络可以看作一个树形结构,从根部的供应商往下,每个人从上一级供应商中买入商品后,假定买入价格为 P,则会以高出买入价 r% 的价格向下出售。 只有零售商(即叶节点)可以直接将产品销售给顾客。 现在, 阅读全文
posted @ 2023-04-21 20:12 回忆、少年 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 供应链是由零售商,经销商和供应商构成的销售网络,每个人都参与将产品从供应商转移到客户的过程。 整个销售网络可以看作一个树形结构,从根部的供应商往下,每个人从上一级供应商中买入商品后,假定买入价格为 P,则会以高出买入价 r% 的价格向下出售。 只有零售商(即叶节点)可以直接将产品销售给顾客。 现在, 阅读全文
posted @ 2023-04-21 20:09 回忆、少年 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 二叉搜索树 (BST) 递归定义为具有以下属性的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值 若它的右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值 它的左、右子树也分别为二叉搜索树 我们将二叉搜索树镜面翻转得到的树称为二叉搜索树的镜像。 现在,给定一个整数序列 阅读全文
posted @ 2023-04-21 20:07 回忆、少年 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 一个无环连通图可以被视作一个树。 树的高度取决于所选取的根节点。 现在,你要找到可以使得树的高度最大的根节点。 它被称为最深的根。 输入格式 第一行包含整数 N,表示节点数量。 节点编号为 1∼N。 接下来 N−1 行,每行包含两个整数,表示两个节点之间存在一条边。 输出格式 输出最深的根的节点编号 阅读全文
posted @ 2023-04-21 20:05 回忆、少年 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 假设一个二叉树上所有结点的权值都互不相同。 我们可以通过后序遍历和中序遍历来确定唯一二叉树。 也可以通过前序遍历和中序遍历来确定唯一二叉树。 但是,如果只通过前序遍历和后序遍历,则有可能无法确定唯一二叉树。 现在,给定一组前序遍历和后序遍历,请你输出对应二叉树的中序遍历。 如果树不是唯一的,则输出任 阅读全文
posted @ 2023-04-21 19:39 回忆、少年 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 有诗云: 相思 (王维 唐) 红豆生南国, 春来发几枝。 愿君多采撷, 此物最相思。 那么,我们来采红豆吧! 假设红豆树是这个样子的: 这种红豆树的特点是: 每个结点都有一个正整数编号,标在结点内部。结点的编号各不相同。 最上方一层结点是 “红豆”(图中红圈所示的5个结点),这一层被称之为红豆层。 阅读全文
posted @ 2023-04-21 14:55 回忆、少年 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 7-1 聪明一点的拖长音 题目描述 输入一行字符,去掉空格,在每个单词最后一个字母处加一个-。 输入格式: 输入一行字符,中间有若干空格,字符数不超过100个。 输出格式: 输出这行的所有英文字母,在每个单词末尾加一个-。注:单词是指由大写或小写英文字母组成的一个词。 输入样例: I am a gi 阅读全文
posted @ 2023-04-21 14:42 回忆、少年 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 以上图片来自新浪微博。 本题要求你实现一个稍微更值钱一点的 AI 英文问答程序,规则是: 无论用户说什么,首先把对方说的话在一行中原样打印出来; 消除原文中多余空格:把相邻单词间的多个空格换成 1 个空格,把行首尾的空格全部删掉,把标点符号前面的空格删掉; 把原文中所有大写英文字母变成小 阅读全文
posted @ 2023-04-21 12:01 回忆、少年 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 假定有n个城堡,编号为1至n,有的城堡之间有道路直接相连,有的城堡之间没有道路直接相连。马里奥现在准备从一个城堡出发前往另一个城堡,它有一个魔法棒,可以瞬时通过一条道路,即以0时间通过这条道路,但魔法棒最多只能用一次。马里奥想以最短的时间到达目的地,请编写程序为马里奥选定一条路线以及在什 阅读全文
posted @ 2023-04-21 11:57 回忆、少年 阅读(76) 评论(0) 推荐(0) 编辑