博客专栏  >  移动开发   >  算法导论专栏

算法导论专栏

算法导论学习笔记和知识点。 算法导论相关知识点开发。

关注
5 已关注
44篇博文
  • 算法导论之NP完全性和近似算法

    NP完全性和近似算法 在理解NP完全性之前,笔者想引入关于科学与伪科学的定义。凡可接受实践检验、可被证实和被否正的为科学,相反之为非科学,而伪科学是非科学之子集,与科学相对立,认定非科学为科学的即是伪...

    2016-05-04 17:14
    3505
  • 算法导论之数学归纳法和递归

    推理是一种逻辑思维,一种方法论,归纳推理是从个性推导到共性的过程,而演绎推理则从共性递推到个性的过程。事物的一般性和特殊性,是推理方法的基点,通过下面例子来简单理解下归纳推理是如何从特殊上升到一般。 ...

    2016-05-11 10:30
    2897
  • 算法导论之概率分析和随机算法

    在问题的分析中应用概率技术称为概率分析,前期是对所有可能的输入集合可以做假定。如果无法对输入分布做合理性建模,如果一个算法的行为不只是由输入决定,同时也由随机数生成器所产生的数值决定,则为随机算法。行...

    2016-05-16 11:04
    2017
  • 算法导论之排序和顺序统计学

    排序:对N个数的序列重排过程。待排序的数,一般是选择记录中数据集的关键字key作为排序的值,而数据集中其他数据(称为:卫星数据)以key为中心移动。实际上,对于排序过程中,key的移动和交换,卫星数据...

    2016-06-02 15:23
    1938
  • 算法导论之数据结构

    数据结构 集合,是数学也是计算机科学的基础,在表示和操纵有穷、动态集合上,动态集合中每个元素由对象来表示,并有指向对象的指针。对动态集合的操作分为两类:查询和修改,操作以指针为导航,涉及元素对象内的...

    2016-06-17 09:12
    1968
  • 算法导论之动态规划(最长公共子序列和最优二叉查找树)

    动态规划师通过组合子问题的解而解决整个问题,将问题划分成子问题,递归地求解各子问题,然后合并子问题的解而得到原问题的解。和分治算法思想一致,不同的是分治算法适合独立的子问题,而对于非独立的子问题,即各...

    2016-07-06 09:54
    2576
  • 算法导论之贪心算法(Huffman编码和拟阵)

    贪心算法,在解决最优化问题上,通过得到子问题的局部最优解来合成问题的一个解,以局部最优选择来输出一个全局最优解。 问题要用贪心算法来求解,需满足和动态规划一样的最优子结构特征,同时还需要再每个子问题最...

    2016-07-13 16:19
    2366
  • 哈夫曼编码(Huffman)Java实现代码

    网上找到的一个组Huffman编码Java实现代码,比较经典。 1、主类,压缩和解压 package cn.hm; import java.io.BufferedInputStream; i...

    2016-07-14 17:00
    4235
  • 哈夫曼编码(Huffman)Java实现代码简化版

    这个网上发现的Huffuman编码Java实现在组织上相对简化,便于理解文件压缩过程:提取文件统计字符频度-根据字符频度创建huffman树-根据huffman树生成huffman可变字长无前缀编码-...

    2016-07-14 17:12
    3472
  • 算法导论之平摊分析(动态表)

    平摊分析,amortizedanalysis,对数据结构执行的所有操作的总和时间是油由求平均而得出,用来证明一系列操作中,通过对所有操作求平均代价,即时某一操作具有较大代价,但平均代价还是小的。导论中...

    2016-07-18 09:52
    2113
  • 最长公共子序列Java代码实现

    最长公共子序列定义:两个或多个已知数列的子序列集合中最长的就是最长公共子序列。 比如数列A = “abcdef”和B = “adefcb”,那么两个数列的公共子序列集合有{”a","ab","abc...

    2016-07-19 11:08
    3408
  • 二叉查找树Java实现代码

    二叉查找树(Binary Search Tree),或者是一颗空树,或者是具有下列性质的二叉树: 1、若它的左子树不空,则其左子树上的所有结点的值均小于它根结点的值; 2、若它的右子树不空,则其右...

    2016-07-20 16:52
    2327
  • 算法导论之B树

    开宗明义,B树是为磁盘或其他直接存取辅助设备而设计的一种平衡查找树。一般设计的简单数据结构都是面向主存而设计的,主存读取速度快但容量小;而磁盘读取速度慢而容量大,于是针对磁盘而设计的数据结构就不同于为...

    2016-07-25 09:58
    1920
  • 算法导论之二项堆

    每件事物都有其应需而生的目的,既然存在了,一定有其出现的因和果。二项堆的存在,就是因为二叉堆在Union操作上性能不如意而被发明的。二项堆的Union操作只需O(lgn)时间就可以完成两个二项堆的合并...

    2016-08-01 14:52
    2036
  • 算法导论之斐波那契堆

    斐波那契堆,和二项堆类似,也是由一组最小堆有序的树构成。注意区别,不是二项树,是有根而无序的树。导论中,斐波那契堆只是具有理论上的意义,是以平摊分析为指导思想来设计的数据结构,主要是渐进时间界比二项堆...

    2016-08-05 11:28
    2070
  • 算法导论之用于不相交集合的数据结构

    不相交集合,即集合内元素无交集。在一些具体应用中,需将n个不同的元素分成一组不相交的集合。不相交集合的两个重要操作,找出给定元素所属的集合和合并两个集合。为支持不相交集合的操作,需要设计和维护数据结构...

    2016-08-12 10:15
    1862
  • 算法导论之图的基本算法

    图是一种数据结构,有关图的算法是计算机科学中基础性的算法。这个论述恰如其分。 图的基本算法包括图的表示方法和图的搜索方法。图的搜索技术是图算法领域的核心,有序地沿着图的边访问所有顶点,可以发现图的结...

    2016-10-11 12:01
    2012
  • Java实现算法导论中图的广度优先搜索(BFS)和深度优先搜索(DFS)

    对算法导论中图的广度优先搜索(BFS)和深度优先搜索(DFS)用Java实现其中的伪代码算法,案例也采用算法导论中的图。 import java.util.ArrayList; import jav...

    2016-10-12 11:34
    1956
  • 算法导论之图的最小生成树

    引出最小生成树,是提到电子线路设计时,要把数个元件的引脚连接在一起,使其电位相同。使n个引脚互相连通,可以使用n-1条连接线,每条连接线连接两个引脚。寻求连接线最少的方案,是最小生成树的应用。将电子线...

    2016-10-17 09:54
    1984
  • 算法导论之单源最短路径

    单源最短路径,在现实中是很多应用的,是图的经典应用,比如在地图中找出两个点之间的最短距离、最小运费等。单源最短路径的问题:已知图G=(V,E),找出给定源顶点s∈V到每个顶点v∈V的最短路径。单源最短...

    2016-10-26 09:43
    2293

python专栏
2942200
机器学习专栏
58123401
Hadoop专栏
71180398
img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部