
算法
文章平均质量分 64
lzkIT
这个作者很懒,什么都没留下…
展开
-
算法的力量
个人觉得李开复这篇文章写得不错,于是就筛选几段精彩的内容分享下。 算法是计算机科学领域最重要的基石之一,但却受到了国内一些程序员的冷落。许多学生看到一些公司在招聘时要求的编程语言五花八门,就产生了一种误解,认为学计算机就是学各种编程语言,或者认为,学习最新的语言、技术、标准就是最好的铺路方法。其实,大家被这些公司误导了。编程语言虽然该学,但是学习计算机算法和理论更重要,因为计算机语转载 2012-08-07 19:55:56 · 1140 阅读 · 0 评论 -
加密算法
数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码,通常称为“密文”,使其只能在输入相应的密钥之后才能显示出本来内容,通过这样的途径来达到保护数据不被非法人窃取、阅读的目的。 该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程。一、常见加密算法 DES(Data Encryption Standard):对称算法,数据加密标准,速度较转载 2012-08-12 11:58:47 · 811 阅读 · 0 评论 -
排序算法
学C的时候排序的算法只知道是冒泡排序和选择排序,效率为n^2,当数据量比较大的时候,用这种算法排序跑起来付出的代价是很可观的。当然还有很多高效率的排序方法,如快速排序,堆排序,效率为n*logn。下面就列出快速排序的核心代码:•void QuickSort(int * arr,int left,int right) •{ • int i,j,k,mid,temp;原创 2012-08-14 22:00:38 · 513 阅读 · 0 评论 -
广度优先搜索
•在很多情况下,我们在没有想到很好的算法的时候,一般都是采用搜索的算法,现在就介绍广度优先搜索的算法给大家。•广度优先搜索跟深度优先搜索有点不一样,广度优先搜索就是先宽度,后深度,俗话说就是选择多条路,一起走,最后达到目的 •广度优先搜索类似于按层次遍历的过程。它和队有很多相似之处,运用了队的许多思想,其实就是对队的深入一步研究,它的基本操作和队列几乎一样。下面原创 2012-08-27 19:44:03 · 563 阅读 · 0 评论 -
各种背包问题简述
P01: 01背包问题 这是最基本的背包问题,每个物品最多只能放一次题目有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。基本思路这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。用子问题定义状态:即f[i][v]表示前i件物品恰放入一个转载 2012-09-10 21:29:45 · 1209 阅读 · 0 评论 -
算法复杂度分析
分析非递归算法效率的通用方案:1. 决定用哪个(哪些)参数作为输入规模的度量2. 找出算法的基本操作(作为一规律,它总是位于算法的最内层循环中)。3.检查基本操作的执行次数是否只依赖输入规模。如果它还依赖一些其他的特性,则最差效率、平均效率以及最优效率(如果必要)需要分别研究。4.建立一个算法基本操作执行次数的求和表达式。5.利用求和运算的标公式和法则来建立一个操作次数转载 2013-09-29 21:57:17 · 904 阅读 · 0 评论 -
棋盘覆盖问题
问题描述:在一个2k×2k (k≥0)个方格组成的棋盘中,恰有一个方格与其他方格不同,称该方格为特殊方格。棋盘覆盖问题要求用图4.11(b)所示的4种不同形状的L型骨牌覆盖给定棋盘上除特殊方格以外的所有方格,且任何2个L型骨牌不得重叠覆盖。 (a) k=2时的一种棋盘原创 2013-11-06 21:44:16 · 1204 阅读 · 0 评论 -
循环赛日程安排问题(分治法)
问题描述: 设有n=2k个选手要进行网球循环赛,要求设计一个满足以下要求的比赛日程表:(1)每个选手必须与其他n-1个选手各赛一次;(2)每个选手一天只能赛一次。 按此要求,可将比赛日程表设计成一个 n 行n-1列的二维表,其中,第 i 行第 j 列表示和第 i 个选手在第 j 天比赛的选手。算法分析:假设n位选手被顺序编号为1,2,3原创 2013-11-07 22:36:40 · 11956 阅读 · 1 评论