笔试中经常会遇到操作字符串,输入输出格式等问题,为了以后不再犯迷糊,在这里总结一下,也希望小伙伴们能够跳过这些坑,专心把思路放到算法设计上来。 1,字符串操作: 题目1:输入一行字符串(中间可能会有空格),然后对该字符串做操作。 坑:在c++中,如果直接cin>>s,在遇到空格和回车时是不区分的,所 ...
分类:
其他好文 时间:
2016-09-24 20:31:42
阅读次数:
136
第一次在《算法导论》中看到这三种渐进记法的符号,当时对此一窍不通,所以也就没有注意它们,直接把他们忽略了,知道学习算法的时候,才知道当初的做法有多傻,因为一个算法的好坏以及复杂度,可以用它们来表示。现在我学习过程当中用的最多的是O(g(n)),大概是老师认为我们还不具有算法设计分析与优化的能力吧。 ...
分类:
其他好文 时间:
2016-09-22 01:02:16
阅读次数:
321
转载请说明出处:http://blog.csdn.net/cywosp/article/details/23397179 一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了 ...
分类:
编程语言 时间:
2016-09-21 20:08:50
阅读次数:
193
一、简答题1.动态链接库和静态链接库的优缺点2.轮询任务调度和可抢占式调度有什么区别?3.列出数据库中常用的锁及其应用场景二、算法设计题1.给定N是一个正整数,求比N大的最邪不重复数”,这里的不重复是指没有两个相等的相邻位,如1102中的11是相等的两个相邻位故不是不重复数..
分类:
其他好文 时间:
2016-09-09 01:13:09
阅读次数:
255
算法 定义:算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作 特性:五个基本特性,即输入、输出、有穷性、确定性、可行性 算法设计的要求 正确性:算法的正确性是指算法至少应该具有输入、输出和加工处理无歧义性、能正确反映问题的需求、能够得到问题的正确答案 ...
分类:
编程语言 时间:
2016-08-08 00:39:36
阅读次数:
169
联机算法:联机算法是在任意时刻算法对要操作的数据只读入(扫描)一次,一旦被读入并处理,它就不需要在被记忆了。而在此处理过程中算法能对它已经读入的数据立即给出相应子序列问题的正确答案。 离线算法:算法设计策略都是基于在执行算法前输入数据已知的基本假设,也就是说,对于一个离线算法,在开始时就需要知道问题 ...
分类:
编程语言 时间:
2016-07-30 16:18:33
阅读次数:
406
学习《算法设计与分析基础》,习题2.4 第5题要求为汉诺塔游戏设计一个非递归的算法。 思,不得其解。看书后答案提示: 好吧,话都说得这么直接了,遂百度之,得到一个感觉很好的答案,略做修改,摘录于下: 原文地址:http://blog.sina.com.cn/s/blog_48e3f9cd010004 ...
分类:
编程语言 时间:
2016-07-30 13:36:19
阅读次数:
184
《算法设计与分析基础》习题1.2 第 9 题如下: 原算法遍历每一个元素对,时间复杂度为 O(n²)。这其中有一半的元素对是重复比较的。且在已知 a < b < c 而比较过了 a、b 的差的情况下,没必要再比较 a 和 c 的差。 改进该算法的思想时,先选取前两个元素的差作为 dmin ,并记录下 ...
分类:
编程语言 时间:
2016-07-29 19:04:21
阅读次数:
1878
动态规划基本思想:将待求问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题解。与分治不同的是,适应动态规划的问题具有两个特征:1)最优子结构,即问题的最优解包含了子问题的最优解。2)子问题重叠性质,即在递归中,出现了重复的子问题求解。
步骤:
1)找出最优解的性质,并刻画其结构特征;
2)递归地定义最优值;
3)以自底向上的方式计算出最优值;
4)根据计算最优值时得到额...
分类:
编程语言 时间:
2016-07-19 11:12:08
阅读次数:
217