返回顶部
上一页 1 2 3 4 5 6 7 8 9 10 ··· 13 下一页

2019年9月6日

摘要: 【问题】如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。 【思路】 阅读全文
posted @ 2019-09-06 14:38 追着子王小奔跑的顶 阅读(201) 评论(0) 推荐(0) 编辑
 
摘要: 【问题】给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8)中,按结点数值大小顺序第三小结点的值为4。 【思路】由于根据二叉搜索树的特性,其中序遍历正好是一个排好序的序列,从小到大依次排序,因此其第k个最小节点则为数组第k-1个数(数组从零开始索引)。一般功能修改的话 阅读全文
posted @ 2019-09-06 14:37 追着子王小奔跑的顶 阅读(194) 评论(0) 推荐(0) 编辑

2019年9月5日

摘要: 【问题】请实现两个函数,分别用来序列化和反序列化二叉树 二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时通过 某种符号表示空节点 阅读全文
posted @ 2019-09-05 21:51 追着子王小奔跑的顶 阅读(120) 评论(0) 推荐(0) 编辑
 
摘要: 【问题】从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 【思路】层次遍历,层次遍历,层次遍历,然后使用队列的size,用于判断每一行的个数,然后,一次遍历一次直接遍历一行。 阅读全文
posted @ 2019-09-05 21:49 追着子王小奔跑的顶 阅读(148) 评论(0) 推荐(0) 编辑

2019年9月4日

摘要: 【问题】请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 【思路】这道题目与之前有个"二叉树的深度"题目类似,思路的核心是层次遍历,但是在遍历的同时需要处理每一层数据,因此可以使用一个while循环,将每 阅读全文
posted @ 2019-09-04 15:05 追着子王小奔跑的顶 阅读(167) 评论(0) 推荐(0) 编辑
 
摘要: 【问题】请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 【思路】首先使用递归得方法,代码非常得简洁,如果l与r都是nullptr,那么就返回真,如果只有其中一个为nullptr,那么一定不是对称二叉树,则返回false,如果都不是nul 阅读全文
posted @ 2019-09-04 15:03 追着子王小奔跑的顶 阅读(122) 评论(0) 推荐(0) 编辑

2019年9月3日

摘要: 主要有以下四种方法: ①开放地址法 基本思想是:当关键字key的哈希地址p=H(key)出现冲突时,以p为基础,产生另一个哈 希地址p1,如果p1仍然冲突,再以p为基础,产生另一个哈希地址p2,…,直到找出一个不 冲突的哈希地址pi ,将相应元素存入其中。 ②拉链法 这种方法是同时构造多个不同的哈希 阅读全文
posted @ 2019-09-03 22:19 追着子王小奔跑的顶 阅读(346) 评论(0) 推荐(0) 编辑
 
摘要: 【问题】给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 【思路】这道题目很坑人的就是parent指针不叫parent,叫做next, 也太奇葩了吧,不过无所谓啦,中序遍历的下一个节点主要分为两种情况: 情况一: 阅读全文
posted @ 2019-09-03 22:08 追着子王小奔跑的顶 阅读(189) 评论(0) 推荐(0) 编辑
 
摘要: 【问题】在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 【思路】首先题目说了这是一个排序链表,因此所有重复的数一定会是在一起的,这样我们改变指针的指向,就可以将这些重复的一次性 阅读全文
posted @ 2019-09-03 22:07 追着子王小奔跑的顶 阅读(191) 评论(0) 推荐(0) 编辑
 
摘要: 【问题】给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。 【思路】第一种思路最好想,也最容易入手,使用一个hash_set,保存访问过的节点地址,再遍历的同时进行搜索,如果搜到了,直接退出循环,返回这个节点即为入环节点,如果没有环,则遍历到nullptr退出,返回nullp 阅读全文
posted @ 2019-09-03 22:06 追着子王小奔跑的顶 阅读(347) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 13 下一页