IncredibleThings

导航

11 2018 档案

Google - Find minimum number of coins that make a given value
摘要:Given a value V, if we want to make change for V cents, and we have infinite supply of each of C = { C1, C2, .. , Cm} valued coins, what is the minimum number of coins to make the change? Examples: ... 阅读全文

posted @ 2018-11-29 11:19 IncredibleThings 阅读(273) 评论(0) 推荐(0)

Google - Reconstruct To Chain
摘要:/* 4. 给你一串input,比如: A -> B B -> C X -> Y Z -> X 。 。 。 然后让你设计一个data structure来存这些关系,最后读完了以后呢要输出这些关系链:[A -> B -> C, Z -> X -> Y] 如果遇到invalid的case就直接raise error,比如你已经有了A->B->C,这时候给你一个D->C或者B->D就是invalid... 阅读全文

posted @ 2018-11-26 11:21 IncredibleThings 阅读(177) 评论(0) 推荐(0)

LeetCode - Sequence Reconstruction
摘要:用两个哈希表来代替了上面的数组和变量,其中m为数字和其位置之间的映射,pre为当前数字和其前一个位置的数字在org中的位置之间的映射。跟上面的方法的不同点在于,当遍历到某一个数字的时候,我们看当前数字是否在pre中有映射,如果没有的话,我们建立该映射,注意如果是第一个位置的数字的话,其前面数字设为- 阅读全文

posted @ 2018-11-25 23:55 IncredibleThings 阅读(147) 评论(0) 推荐(0)

Google - chanceToLose24Game
摘要:/* 一个类似24点的游戏,假设牌桌上有无数张1-10的牌,然后你手上的牌的总和是k,现在你可以随机到牌桌上抽牌加到总和里,如果你手上牌的总和在20-25之间就是win,如果总和超过25就是lose,现在让你求lose的概率。 这一题我好像在地里见到过但是当时那个楼主说他没有做出来,所以我就也附上一下我的大概解法。 首先因为每张牌都是无数张,所以抽任何一张牌的概率都是0.1。然后就是要考虑到有很... 阅读全文

posted @ 2018-11-24 12:44 IncredibleThings 阅读(231) 评论(0) 推荐(0)

Google - Find Most People in Chat Log
摘要:1. 给你一个chatting log file,format大概是这样的: A: bla B: bla bla C: bla bla bla 要你找出说话最多(看word number) 的K个人 而且代码要从读file开始写 /* 1. 给你一个chatting log file,format大概是这样的: A: bla B: bla bla C: bla bla bla 要你找出说话最... 阅读全文

posted @ 2018-11-24 05:36 IncredibleThings 阅读(225) 评论(0) 推荐(0)

LeetCode - Maximum Frequency Stack
摘要:Hash map freq will count the frequence of elements.Hash map m is a map of stack.If element x has n frequence, we will push x n times in m[1], m[2] .. 阅读全文

posted @ 2018-11-24 04:39 IncredibleThings 阅读(162) 评论(0) 推荐(0)

LeetCode - Fruit Into Baskets
摘要:用 two points 去维护一个 window, 注意一些coner case 阅读全文

posted @ 2018-11-19 11:54 IncredibleThings 阅读(178) 评论(0) 推荐(0)

LeetCode - Online Election
摘要:所以这个题使用List保存每个时间点对应的当前的获得票数最多的person。在q(t)中,使用二分查找到第一个小于t的times位置,然后返回这个位置对应的时间得票最多的person即可。 平均的时间复杂度是O(logn),空间复杂度是O(N). 阅读全文

posted @ 2018-11-19 06:44 IncredibleThings 阅读(174) 评论(0) 推荐(0)

LeetCode - X of a Kind in a Deck of Cards
摘要:这道题仔细分析之后会得到X 一定得能被deck.length整除,也一定得被每个元素出现的次数整除,才能return true 阅读全文

posted @ 2018-11-19 00:28 IncredibleThings 阅读(138) 评论(0) 推荐(0)

LeetCode - Word Subsets
摘要:这道题的核心就是理解对于B的处理: 先来理解题目,题目强调的是单个字母,不存在字母顺序问题,所以只要统计出B中每个小写字母,在所有的单词中出现次数最高的那个数(例如,B = ["loo","eo"],那么o 最大的出现次数为2, 因为在"loo"出现了两次,在"eo"出现了一次,所以以最大的为准), 阅读全文

posted @ 2018-11-18 11:25 IncredibleThings 阅读(111) 评论(0) 推荐(0)

LeetCode - Unique Email Addresses
摘要:Hash 阅读全文

posted @ 2018-11-18 09:41 IncredibleThings 阅读(123) 评论(0) 推荐(0)

LeetCode - Beautiful Array
摘要:这道题是用divide and conque 做的。参考自: https://blog.csdn.net/lwgkzl/article/details/83502656 因为2*A[k]是偶数,如果要求2*A[K]!=A[I]+A[J]那么可以构造位置在A[k]左边的全部放奇数,位置在A[k]右边的 阅读全文

posted @ 2018-11-18 09:19 IncredibleThings 阅读(202) 评论(0) 推荐(0)

LeetCode - Number of Recent Calls
摘要:用queue 阅读全文

posted @ 2018-11-16 12:48 IncredibleThings 阅读(218) 评论(0) 推荐(0)

LeetCode - Minimum Area Rectangle
摘要:核心思想是利用对角线的原理定下两个点,根据对角线在找到另外两个点 如何把一个array pair存到hash里,第一次我用了int -> string, 超时了 第二次看了别人的代码, 原来可以按照把每一个pair的x存成key,y轴存成一个hashset。 阅读全文

posted @ 2018-11-16 12:04 IncredibleThings 阅读(238) 评论(0) 推荐(0)