算法
lqshanshuo
这个人很懒,什么都没有留下。。
展开
-
滴滴笔试题
题目一家餐馆,有m张桌子,每张桌子容纳的人数为ai。来了n波顾客,每波人数为bi,消费为ci。不同波客人不可以拼桌。例子 m=3,n=4,a=[2,2,3],b=[(2,30),(2,50),(2,10),(3,40)]思路贪婪:按照人数分别将桌子和客人排序。从最小的桌子开始,查找能坐下的人数中花费最高的。然后将该波人从数据中移除。继续分析下一张桌子。 桌子容纳人数 最大收入 2原创 2016-09-07 10:31:10 · 912 阅读 · 3 评论 -
LeetCode 400. Nth Digit
题目:Find the nth digit of the infinite integer sequence 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, …n is positive and will fit within the range of a 32-bit signed integer (n < 231).Input:11Output:0Explanat原创 2017-02-01 11:00:51 · 413 阅读 · 0 评论 -
LeetCode 141. Linked List Cycle
题目:Given a linked list, determine if it has a cycle in it.Follow up: Can you solve it without using extra space? 思路:不能使用类似Set的办法,空间太大,只能使用两个指针发现循环。我的做法,一个指针步长为1,另一个步长为2,不难证明如果有环一定可以相遇。优点不改变链表的原式结构,但两原创 2017-01-21 14:03:52 · 240 阅读 · 0 评论 -
LeetCode 449. Serialize and Deserialize BST
题目:Serialization is the process of converting a data structure or object into a sequence of bits so that it can be stored in a file or memory buffer, or transmitted across a network connection link to原创 2017-01-26 16:36:46 · 613 阅读 · 0 评论 -
LeetCode 460. LFU Cache
题目:Design and implement a data structure for Least Frequently Used (LFU) cache. It should support the following operations: get and put.get(key) - Get the value (will always be positive) of the key i原创 2017-01-28 18:04:37 · 1825 阅读 · 1 评论 -
蒙特卡罗方法入门(阮一峰)
本文通过五个例子,介绍蒙特卡罗方法(Monte Carlo Method)。 原文出处:阮一峰的日志(@ruanyf)http://blog.jobbole.com/88465/本文通过五个例子,介绍蒙特卡罗方法(Monte Carlo Method)。 一、概述蒙特卡罗方法是一种计算方法。原理是通过大量随机样本,去了解一个系统,进而得到所要计算的值。它非常强大和灵活,又相当简单易懂,很容易实现转载 2017-01-21 13:44:33 · 538 阅读 · 0 评论 -
LeetCode 18. 4Sum
题目:Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array which gives the sum of target.Note: The solution s原创 2017-01-09 00:17:09 · 190 阅读 · 0 评论 -
LeetCode 15. 3Sum
题目:Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note: The solution set must not contain d原创 2017-01-07 22:41:29 · 250 阅读 · 0 评论 -
LeetCode 10. Regular Expression Matching
题目:Implement regular expression matching with support for ‘.’ and ‘*’.'.' Matches any single character.'*' Matches zero or more of the preceding element.The matching should cover the entire i原创 2017-01-07 21:54:29 · 226 阅读 · 0 评论 -
堆排序
大(小)根堆特性堆排序中小根堆对应降序,大根堆对应升序(以下所有以大根堆为例)。是一种完全二叉树(叶子节点层级差不大于1,且最后一层节点靠左排列,但不一定是满二叉树)。父节点值大于两个子节点的值,所以二叉树的根为最大值。排序思想堆排序是选择排序的一种改进,以O(NlogN)的时间复杂度构建出大根堆(最大值位于堆顶)。然后每次取堆顶的最大值放入数组尾端,调整剩余二叉树,使其重新成为大根堆,原创 2017-02-25 13:45:29 · 439 阅读 · 0 评论