数据结构与算法
慢慢的踏实走
这个作者很懒,什么都没留下…
展开
-
贪心算法的一例子,这是阿里的笔试题
11: n从1开始,每个操作可以选择对n加1或者对n加倍。若想获得整数2013,最少需要多少个操作。A:18 B:24 C:21 D;不可能参考答案: A,18个完美解决,方法也很简单,尽量对2013用除法,显示2013->2012->1006->503->502->251->250->125->124->62->31->30->15->14->7->6->3->2->原创 2014-08-23 09:30:15 · 886 阅读 · 0 评论 -
关于随机数生产问题
其实算法是一种积累,看多了形成一种习惯,转载 2014-08-27 11:16:46 · 633 阅读 · 0 评论 -
洗牌算法与tencent的一道笔试题
你在洗牌的时候,会在在意原创 2014-08-27 21:39:35 · 708 阅读 · 0 评论 -
递归的运行时间,及Fibonacci的递归算法复杂度
问了个面过boss面的版友,没回我,我还是挺想知道我做的对不对的。最后一道题,是不是a=0,就是a-1?a1-a2我loop(a2) a1=0; a2=0;但是我没加判断。可能就不对了。其他题我感觉还好吧。写程序哪个从一个数组里找一个重复的数输出不就两个循环吗?不知道fm是按什么标准,怎么收人的。对了,还有一个求算法复杂度的问题,类似于递归Fibonacci函数的那种return原创 2014-09-17 22:30:01 · 2118 阅读 · 0 评论 -
字符串的组合
程序员面试题精选100题(59)-字符串的组合[算法] 2011-05-17 14:08:12| 分类: 杂题 | 标签:google 编程 就业 面试题 数据结构 |举报|字号 订阅 题目:输入一个字符串,输出该字符串中字符的所有组合。举个例子,如果输入abc,它的组合有a、b、c、ab、ac、bc、abc。分析:在本系列博客的第2转载 2014-12-01 09:20:14 · 570 阅读 · 0 评论 -
对输入字符串进行压缩,输入"aaabcccdde",输出"3ab3c2de",即对连续出现的字符进行压缩。
http://www.cnblogs.com/liangchao/archive/2012/09/11/2680228.html void string_compress( char s[] ) { int i, j; int count; int len = strlen( s );转载 2014-12-08 10:19:48 · 1365 阅读 · 1 评论 -
最小优先级队列
什么是最小优先级队列优先队列又叫做堆,分最小堆和最大堆,你说的最小优先队列就是最小堆这个是一种二叉树,最小堆的主要性质是每一棵子树的根结点的值都要比他的儿子的要小。每次从这个堆是取一个最小的和插入一个值并把堆调整成最小堆的花费都log2(n)级别的。这个在时间排序调度算法上有很好的应用。这个东西是很有用的。经常和一些其他的算法结合在一起使用。比如我们动态的给出一些数字,或者删除一些转载 2015-09-28 11:09:08 · 720 阅读 · 0 评论 -
什么是ring buffer?
Ring Buffer 有什么特别?原文地址: http://mechanitis.blogspot.com/2011/06/dissecting-disruptor-whats-so-special.html 作者是 Trisha Gee, LMAX 公司的一位女工程师。最近我们开源了 LMAX Disruptor,它是让我们的交易流程变得如此之快的关键。为什么要转载 2016-02-04 10:10:01 · 4904 阅读 · 0 评论 -
关于switch和if else的效率问题
出处:http://blog.csdn.net/kehui123/article/details/5298337switch与if..else 的执行的效率问题 今天读一前辈的程序,发现其在串口中断里面为了分析协议的报文类型,在中断函数里面使用if..else语句。因为报文类型在现在看来只有两种,以后有可能还会增加,不确定。 本人以为这样用有些不妥,为什么不用switch语句呢?猜想是转载 2016-06-03 16:14:28 · 477 阅读 · 0 评论