
算法汇总
文章平均质量分 79
超级土豆
码工
展开
-
贪婪算法(一)
虽然设计一个好的求解算法更像是一门艺术,而不像是技术,但仍然存在一些行之有效的能够用于解决许多问题的算法设计方法,你可以使用这些方法来设计算法,并观察这些算法是如何工作的。一般情况下,为了获得较好的性能,必须对算法进行细致的调整。但是在某些情况下,算法经过调整之后性能仍无法达到要求,这时就必须寻求另外的方法来求解该问题。 本章首先引入最优化的概念,然后介绍一种直观的问题求解方法:贪婪算法。...原创 2009-09-24 17:12:34 · 97 阅读 · 0 评论 -
贪婪算法(二)
1.2 算法思想 在贪婪算法(greedy method)中采用逐步构造最优解的方法。在每个阶段,都作出一个看上去最优的决策(在一定的标准下)。决策一旦作出,就不可再更改。作出贪婪决策的依据称为贪婪准则(greedy criterion)。 例1-4 [找零钱] 一个小孩买了价值少于1美元的糖,并将1美元的钱交给售货员。售货员希望用数目最少的硬币找给小孩。假设提供了数目不限的面值为2 5美分、1 ...原创 2009-09-24 17:14:43 · 384 阅读 · 0 评论 -
贪婪算法(三)
上述贪婪算法能导致最优机器分配的证明留作练习(练习7)。可按如下方式实现一个复杂性为O (nl o gn)的贪婪算法:首先采用一个复杂性为O (nl o gn)的排序算法(如堆排序)按Si 的递增次序排列各个任务,然后使用一个关于旧机器可用时间的最小堆。 例1-6 [最短路径] 给出一个有向网络,路径的长度定义为路径所经过的各边的耗费之和。要求找一条从初始顶点s 到达目的顶点d 的最短路径。 贪婪...原创 2009-09-24 17:15:15 · 125 阅读 · 0 评论 -
乱码算法大全
原文出处:http://www.xici.net/b40012/d3777108.htm 相信上过网的朋友们都遇见过“乱码”,也就是在浏览网页或看Email时出现的不能辨认的字符。以前也有许多的文章介绍过“乱码”,不过他们的文章只是讲怎样辨别和怎样用工具解码,并没有详细介绍各种编码的算法的实现,本文将对互联网上最常用的几种编码的编码和解码算法作以详细的阐...原创 2009-09-24 17:23:33 · 968 阅读 · 0 评论 -
基本排序算法总结
排序算法的评价评价排序算法的一般准则是:▶ 平均情况下的排序速度▶ 最优最劣情况下的速度▶ 行为是否自然▶ 是否以相等的关键字重排元素数组的排序速度直接与比较(comparison)次数和交换(exchange)次数相关,其中交换的作用更大,因为占用的时间多。如果频繁遭遇到最优最劣情况,则最优和最劣情况下的运行时间是重要的。所谓自然(natural)行为的排序应该是,对已排序的表操作最容易...原创 2009-11-23 10:22:02 · 94 阅读 · 0 评论 -
排序算法总结
所谓排序,就是要整理文件中的记录,使之按关键字递增(或递减)次序排列起来。当待排序记录的关键字都不相同时,排序结果是惟一的,否则排序结果不惟一。 在待排序的文件中,若存在多个关键字相同的记录,经过排序后这些具有相同关键字的记录之间的相对次序保持不变,该排序方法是稳定的;若具有相同关键字的记录之间的相对次序发生改变,则称这种排序方法是不稳定的。 要注意的是,排序算法的稳定性是针...原创 2009-11-23 10:24:35 · 106 阅读 · 0 评论 -
排序算法(转自维基百科)
所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。分类在计算机科学所使用的排序算法通常被分类为:计算的复杂度(最差、平均、和最好表现),依据串列(list)的大小(n)。一般而言,好的表现是O。(n log n),且坏的行为是Ω(n2)。对於一个排序理想的表现是O(n)。仅使用一个抽象关键比较运算的排序算法总平均上总是至少需要Ω(n log n)。记忆体使用量...原创 2009-11-23 10:27:38 · 234 阅读 · 0 评论 -
重温经典排序思想
=============================================== 作者:rerli 时间:2003-12-15 目的:重温经典排序思想,并用C语言指针实现排序算法 ================================================ */ c /* =================================...原创 2009-11-23 10:30:58 · 79 阅读 · 0 评论 -
排序算法 全
转自http://hi.baidu.com/liulife/blog/item/eee9a359dc9bb22f2934f0e4.html 常见排序算法(C) //排序方法|最好时间 |平均时间 |最坏时间 |辅助空间|稳定性// //------------------------------------------------------// //直接插入| O(n) ...原创 2009-11-23 10:32:21 · 88 阅读 · 0 评论