![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
无必芜杂的心绪
这个作者很懒,什么都没留下…
展开
-
21/02/27刷题记录Day8
面试题 17.09. 第 k 个数 有些数的素因子只有 3,5,7,请设计一个算法找出第 k 个数。注意,不是必须有这些素因子,而是必须不包含其他的素因子。例如,前几个数按顺序应该是 1,3,5,7,9,15,21。 思路 一开始看到题目的时候会以为又是用堆来做的题目。但是仔细一看是丑数相关。和前几天的丑数题目做法一致。 完整代码 public int getKthMagicNumber(int k) { PriorityQueue<Long> heap = new PriorityQueu原创 2021-02-27 14:55:05 · 83 阅读 · 0 评论 -
21/02/25刷题记录Day7
面试题 16.02. 单词频率 设计一个方法,找出任意指定单词在一本书中的出现频率。 你的实现应该支持如下操作: WordsFrequency(book)构造函数,参数为字符串数组构成的一本书 get(word)查询指定单词在书中出现的频率 思路 1.这个题的要点在于创造一个全局的hashmap,在初始化的时候将所有的单词都写进map中。 2.然后在get()中实现查询函数 完整代码 public class WordsFrequency { HashMap<String, Integer>原创 2021-02-25 19:40:47 · 72 阅读 · 0 评论 -
21/02/24刷题记录Day6
剑指 Offer 06. 从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 思路 因为是只要求打印节点值,所以可以用一个ArrayList存每个节点值,最后将ArrayList顺序逆反就行 完整代码 public int[] reversePrint(ListNode head) { ArrayList<Integer> arr = new ArrayList<Integer>(); if(head == null) { retur原创 2021-02-24 18:07:54 · 84 阅读 · 0 评论 -
21/02/23刷题记录Day5
264. 丑数 II 编写一个程序,找出第 n 个丑数。 丑数就是质因数只包含 2, 3, 5 的正整数。 思路 1.丑数:把只包含质因子2,3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但7、14不是,因为它们包含质因子7。 习惯上我们把1当做是第一个丑数。 2.当寻找第N个,第K个时候,使用堆是最好的 3.这里用大根堆来寻找第N大的丑数,用hashmap来判断求出来的数是否已经存在。 错误 因为N在乘上因子之后可能会溢出,所以这路的键用Long类型。 完整代码 public int原创 2021-02-23 18:56:39 · 60 阅读 · 0 评论