1 2 3 4 5 ··· 7 下一页
摘要: BF算法,是一种简单朴素的模式匹配算法,常用于在一个主串 S 内查找一个子串 T 的出现位置。 核心思想与操作是: 对于给定的主串 S 与子串 P ,主串 S 的长度为 N,子串 T 的长度为 M ; 首先,将 S[1] 和 T[1] 进行比较; 若相等,则再比较 S[2] 和 T[2] ,一直到 阅读全文
posted @ 2020-06-02 15:44 Roronoa-Zoro 阅读(562) 评论(0) 推荐(0) 编辑
摘要: 查找入职员工时间排名倒数第三的员工所有信息,为了减轻入门难度,目前所有的数据里员工入职的日期都不是同一天CREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varcha 阅读全文
posted @ 2020-05-27 20:47 Roronoa-Zoro 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。 输出描述:如果当前字符流没有存在出现一次的字符,返回#字符。 思路:观察题目,我们可以 阅读全文
posted @ 2020-05-27 09:01 Roronoa-Zoro 阅读(382) 评论(0) 推荐(0) 编辑
摘要: 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。 思路:根据题意, 阅读全文
posted @ 2020-05-26 09:24 Roronoa-Zoro 阅读(473) 评论(0) 推荐(0) 编辑
摘要: 给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。 思路:根据题目,遍历之后第三个结点是4,我们可以先看看各个遍历的结果 前序遍历:根左右 5 3 2 4 7 6 8 中序遍历:左根右 2 3 4 5 6 7 8 后序遍历 阅读全文
posted @ 2020-05-26 08:55 Roronoa-Zoro 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 思路:如果根节点为空,直接返回一个空列表即可 如果不为空,我们可以设置一个循环,此时进入循环, 我们需要两个列表,一个记录当前层需要输出的元素,另一个记录下一层的节点(用条件判断,当左右子树存在的时候就记录下来) 记得更新循环 阅读全文
posted @ 2020-05-23 09:19 Roronoa-Zoro 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 题目描述请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 思路:由题目可以知道对称二叉树是指除了根节点运行左子树与右子树是对称的 即左子树的左节点与右子树的右节点相等,左子树的右节点与右子树的左节点相等 我们首先判断特殊情况,当根节点为空 阅读全文
posted @ 2020-05-23 09:13 Roronoa-Zoro 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 思路 中序遍历:先左子树,根节点,右子树 1.节点右孩子存在,则设置一个指针从该节点的右孩子出发,一直沿着指向左子结点的指针找到的叶子节点即为下一个节点; 阅读全文
posted @ 2020-05-21 22:04 Roronoa-Zoro 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 思路:前序遍历:先根节点,再左子树,最后右子树 中序 阅读全文
posted @ 2020-05-21 19:53 Roronoa-Zoro 阅读(215) 评论(0) 推荐(1) 编辑
摘要: 题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长 阅读全文
posted @ 2020-05-20 20:38 Roronoa-Zoro 阅读(297) 评论(0) 推荐(0) 编辑
1 2 3 4 5 ··· 7 下一页