贪心算法1.性质贪心算法通过一系列的选择来得到问题的解。它所做的每一个选择都是当前状态下局部的最好选择,即贪心选择。贪心选择的一般特征:贪心选择性质和最优子结构性质。在动态规划算法中,每步所作的选择往往依赖于相关子问题的解。因而只有在解出相关子问题后,才能作出选择。而在贪心算法中,仅在当前状态下作出...
分类:
其他好文 时间:
2014-05-12 09:40:53
阅读次数:
184
排序算法有很多,冒泡排序,选择排序,堆排序,快速排序,归并排序,基数排序……其中平均复杂度O(nlogn)的排序算法或者在某方面有特殊优势的算法在ACM中才有实际使用价值,所以上述提到的前2种大家以后就不要用了。其他排序算法大家会慢慢接触,本文主要介绍使用最多的排序函数
sort。大家可能会遇到qs...
分类:
其他好文 时间:
2014-05-12 09:24:26
阅读次数:
323
原文第21章 策略模式(Strategy Pattern)策略模式
导读:策略模式看完之后,大多数人都会感觉有点混了,包括我,感觉策略模式是一种OO思想的体现(纯属个人拙见)。 概述:
策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户.....
分类:
其他好文 时间:
2014-05-12 08:39:21
阅读次数:
278
原文第4章 建造者模式(Builder
Pattern)定义将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示,这样的设计模式被称为建造者模式。实用范围1
当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。 2 当构造过程必须允许被构造的对象有不同表示时。...
分类:
其他好文 时间:
2014-05-12 08:27:00
阅读次数:
387
转自:http://zh.lucida.me/blog/on-learning-algorithms/关于严格来说,本文题目应该是我的数据结构和算法学习之路,但这个写法实在太绕口——况且CS中的算法往往暗指数据结构和算法(例如算法导论指的实际上是数据结构和算法导论),所以我认为本文题目是合理的。原文...
分类:
其他好文 时间:
2014-05-12 07:26:28
阅读次数:
488
1.修改mac主机名 系统偏好设置-》共享-》电脑名称 ,编辑就可以了。sudo scutil
--set HostName hostname 这个是修改主机名sudo scutil --set ComputerName newName 这个修改计算机名
分类:
其他好文 时间:
2014-05-11 14:23:54
阅读次数:
309
RSA的算法涉及三个参数,n、e1、e2。其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质;再选择e2,要求(e2*e1)mod((p-1)*(q-1))=1。(n,e1),(n,e2)...
分类:
其他好文 时间:
2014-05-10 23:42:36
阅读次数:
522
KMP算法在介绍KMP算法之前,先介绍一下BF算法。一.BF算法
BF算法是普通的模式匹配算法,BF算法的思想就是将目标串S的第一个字符与模式串P的第一个字符进行匹配,若相等,则继续比较S的第二个字符和P的第二个字符;若不相等,则比较S的第二个字符和P的第一个字符,依次比较下去,直到得出最后的匹配结...
分类:
其他好文 时间:
2014-05-10 23:26:37
阅读次数:
453
AC自动机简介:首先简要介绍一下AC自动机:Aho-Corasick
automation,该算法在1975年产生于贝尔实验室,是著名的多模匹配算法之一。一个常见的例子就是给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过。要搞懂AC自动机,先得有字典树Trie和KMP模...
分类:
其他好文 时间:
2014-05-10 23:24:41
阅读次数:
455
数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入数组:{1,3,3,2,3,2,3,3,2}。由于2在数组中出现了5次,超过数组长度的一半,因此要输出2。有两种解法:第一种方法是基于快速排序算法的原理,边排序边判断是否符合输出条件。这种方法的代码我因为没有保存,在电脑蓝屏之后全...
分类:
其他好文 时间:
2014-05-10 22:45:25
阅读次数:
291