摘要: PriorityQueue是基于优先级堆的极大优先级队列 在PriorityQueue提供的构造方法中,可以使用自定义的排序方法: 也可以使用元素自带的Comparable排序 因此,PriorityQueue要求在默认排序的时候,需要元素对象拥有Comparable功能。 但是,若对象在没有Com 阅读全文
posted @ 2019-03-05 17:19 林木声 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 题目: Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. 我们来分析一下上述算法的时间复杂度。假设总共有k个list,每个list的最大长度是n,那么运 阅读全文
posted @ 2019-03-05 16:58 林木声 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。 LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用。 以下实例演示了队列(Queue)的用法: 阅读全文
posted @ 2019-03-05 16:26 林木声 阅读(710) 评论(0) 推荐(0) 编辑
摘要: 题目: 要求使用非递归的方法,中序遍历二叉树。 解答: 前序遍历 可以使用一个栈来模拟这种操作: 首先将root压栈; 每次从堆栈中弹出栈顶元素,表示当前访问的元素,对其进行打印; 依次判断其右子树,左子树是否非空,并进行压栈操作,至于为什么先压栈右子树,因为先压栈的后弹出,左子树需要先访问,因此后 阅读全文
posted @ 2019-03-05 16:22 林木声 阅读(5897) 评论(0) 推荐(0) 编辑
摘要: 题目: 字符串转换为整数 : atoi 可能的输入: 1 带符号数 2 无符号数 3 零 4 空指针 5 超出表示范围 – 暂时仅仅是直接退出且设置最小 – 可以考虑此时抛个异常 6 非法输入,比如并不是一个0-9或者+ -组成的字符串 – 对于非法输入一律返回的是Integer.MIN_VALUE 阅读全文
posted @ 2019-03-05 15:45 林木声 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 题目: 实现函数double Power(double base, int exponent),求base的exponent次方。不得使用库函数,同时不需要考虑大数问题。 解答: 阅读全文
posted @ 2019-03-05 15:27 林木声 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题目: 不使用循环判断一个数字是不是2的n次方 解答: 阅读全文
posted @ 2019-03-05 15:01 林木声 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 题目: 一个长度为n-1的递增排序数组中所有的数字都是唯一的,并且每个数字的都在0-n-1之内。请在范围0-n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。 解答: 阅读全文
posted @ 2019-03-05 14:11 林木声 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 题目: 统计一个数字在排序数组中出现的次数。例如:输入排序数组是{1,2,3,3,3,3,4,5},由于这个3在这个数组中出现了4次,因此输出为4。 解答: 阅读全文
posted @ 2019-03-05 11:33 林木声 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 题目: 输入一个颗二叉树搜索树,请找出其中的第K大节点。 解答: 阅读全文
posted @ 2019-03-05 10:47 林木声 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 题目: 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). 解答: 阅读全文
posted @ 2019-03-05 10:24 林木声 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 题目: 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100"、"5e2"、"-123"、"3.1416"、"-1E-16"都表示数值,但是"12e"、"1a3.14"、"1.2.3"、"+-5"、"12e+5.4"都不是。 解答: 阅读全文
posted @ 2019-03-05 09:58 林木声 阅读(136) 评论(0) 推荐(0) 编辑