码迷,mamicode.com
首页 >  
搜索关键字:算法导论    ( 1209个结果
《算法导论》思考题15-1 双调欧几里得旅行商问题(动态规划)
欧几里得旅行商问题 是对平面上给定的n个点确定一条连接各点的最短闭合旅程的问题。图a给出了7个点问题的解,这个问题的一般形式是NP完全的,故其解需要多于多项式的时间。 J.K.Bentley建议通过只考虑双调旅程来简化问题,这种旅程即为从最左点开始,严格从左到最右点,再严格地从最右点回到最左点...
分类:编程语言   时间:2015-03-17 23:22:30    阅读次数:1208
算法导论学习笔记 6.5 优先队列
优先队列(priority queue)是一种用来维护由一组元素构成的集合S的数据结构,其中的每一个元素都有一个相关的值,称为关键字(key)。一个最大优先队列支持一下操作:   INSERT(S, x):把元素x插入集合S中。   MAXIMUM(S):返回S中具有最大关键字的集合。   EXTRACT-MAX(S):去掉并返回S中的具有最大关键字的元素。   INCREASE-KEY(...
分类:编程语言   时间:2015-03-17 21:52:58    阅读次数:211
[算法导论]拓扑排序 @ Python
class Graph: def __init__(self): self.V = []class Vertex: def __init__(self, x): self.key = x self.color = 'white' s...
分类:编程语言   时间:2015-03-17 17:37:35    阅读次数:182
排序 堆的实现和利用堆来排序
排序 堆的实现和利用堆来排序排序 堆的实现和利用堆来排序Table of Contents一些基本的定义heapy:调整堆build:建堆insert:插入新的元素removetop:取出堆顶现在来使用堆来排序,只要每次都 removetop 就行了堆是最有趣的数据结构,看过《算法导论》的都会很容易...
分类:编程语言   时间:2015-03-17 00:34:16    阅读次数:167
算法导论-动态规划-钢条切割
动态规划通常用于解决最优化问题,在这类问题中,通过做出一组选择来达到最优解。在做出每个选择的同时,通常会生成与原问题形式相同的子问题。当多于一个选择子集都生成相同的子问题时,动态规划技术通常就会很有效,其关键技术就是对每个这样的子问题都保存其解,当其重复出现时即可避免重复求解。钢条切割问题Serli...
分类:编程语言   时间:2015-03-17 00:31:51    阅读次数:265
[算法导论]强连通分量 @ Python
class Graph: def __init__(self): self.V = []class Vertex: def __init__(self, x): self.key = x self.color = 'white' s...
分类:编程语言   时间:2015-03-17 00:28:51    阅读次数:295
排序算法之插入排序(Java)
1.直接插入排序 《算法导论》P10,《数据结构》P265 向已经排好序的数组a[1..j-1]插入a[j],进行一趟循环遍历。插入排序的基本操作是在一个有序表进行查找和插入。每一趟插入排序从后往前进行比较,便于数组中元素的向后移动。 空间复杂度:O(1)(当使用swap交换时,可实现原址) 时间复杂度:(n^2)/4 即O(n^2) 2.拓展 1)折半查找排...
分类:编程语言   时间:2015-03-16 16:29:20    阅读次数:204
插入排序+冒泡排序+选择排序
插入排序的工作机理和打牌时,整理手中的排做法差不多。在开始摸牌的是,我们的左手是空的,排名朝下放在桌上,接着,一次从桌上摸一张牌,并将它插入左手排的正确位置上。为了找到这张牌的正确位置,要将他和手中的没一张哦从右到左进行比较,无论什么时候,左手中的牌都是排好序的。(出自:算法导论) 例如:5,4,6,2,7,3,4,1 5—>4,5—>4,5,6—>2,4,5,6—>2,4,5,6,7—->2,...
分类:编程语言   时间:2015-03-16 12:56:06    阅读次数:139
[算法导论]哈希表 @ Python
直接寻址方式:class HashTable: def __init__(self, length): self.T = [None for i in range(length)]class Data: def __init__(self, key, satelite_da...
分类:编程语言   时间:2015-03-16 12:43:10    阅读次数:176
数据结构与算法导论之基本概念和术语介绍
为了与大家取得“共同的语言”,下面对一些概念和术语赋予确定的含义。 1、数据(data):对客观事物的符号表示,在计算科学中指所有能输入到计算机中并被计算机程序处理的符号总称。 2、数据元素(data element):是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。一个数据元素可以由若干个数据项(data item)组成,数据项是数据不可分割的最小单位。 3、数据对...
分类:编程语言   时间:2015-03-15 13:58:31    阅读次数:202
1209条   上一页 1 ... 75 76 77 78 79 ... 121 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!