博客专栏  >  综合   >  算法导论

算法导论

对《算法导论》中的算法进行讲解和实现

关注
1 已关注
16篇博文
  • 算法导论 之 贪心算法- 矩阵链相乘

    算法导论 之 动态规划 - 矩阵链相乘

    2014-05-08 11:10
    1454
  • 算法导论 之 B树 - 删除[C语言]

    本文主要是讲解B树删除操作的处理过程。在B树的插入操作过程中需要进行结点“分裂”处理,而删除操作正好相反,其需要进行结点“合并”处理,但是它们的共同目的是一致的 —— 维护B树的特征。

    2014-04-13 08:36
    3440
  • 算法导论 之 B树(B-树) - 创建、插入[C语言]

    在计算机科学中,B树在查找、访问、插入、删除操作上时间复杂度为O(log2~n)(2为底数 n为对数),不像自平衡二叉查找树,其可以有效的优化系统对大块的数据读写的性能,其通常在数据库和文件系统中被使...

    2014-03-13 18:28
    5467
  • 算法导论 之 动态规划 - 装配线调度问题[C语言]

    动态规划 - 装配线问题:现有两条装配线,Sij表示第i条上完成第j道工序的装配站。汽车完成组装需要依次完成1~n工序。请找出完成装配并离开装配线的最快路线

    2014-03-07 18:05
    1646
  • 算法导论 之 红黑树 - 打印、销毁 - 非递归[C语言]

    1.引言     之前写了一篇《算法导论 之 平衡二叉树 - 打印》的博文,其中的实现使用的是递归方式,仿照此博文中的代码,可以快速实现红黑树的递归打印。虽然递归方式比较简单明了,但和栈算法比起来,其...

    2013-12-27 17:24
    1805
  • 算法导论 之 红黑树 - 删除[C语言]

    引言     在《算法导论 之 红黑树 - 插入》的博文中,已经对红黑树的插入操作做了较详尽的分析。和插入操作一样,结点的删除操作的时间复杂度也是O(log2@N)[注:以2为底数,N为对数]。

    2014-01-18 01:28
    2477
  • 算法导论 之 红黑树 - 插入[C语言]

    一、性质分析 1.1 性质定义     红黑树是一种二叉查找树,但在每个节点上增加一个存储位表示节点的颜色[RED或BLACK]。通过对任何一条从根到叶子的路径上各个结点着色方式的限制,确保没有一条路...

    2013-12-24 21:31
    2997
  • 算法导论 之 平衡二叉树 - 删除 - 递归[C语言]

    平衡二叉树 删除操作 C语言实现

    2013-12-20 12:19
    2964
  • 算法导论 之 平衡二叉树 - 打印 - 递归[C语言]

    在之前的博文《算法导论 之 平衡二叉树 - 插入、查询、销毁》中已经给出了构建平衡二叉树的C语言实现过程,但随着节点的增加和树结构的不断旋转调整,且插入、查找、删除的过程中可能存在一些异常情况,经过一...

    2013-12-17 11:52
    1871
  • 算法导论 之 平衡二叉树 - 创建、插入、查询、销毁 - 递归[C语言]

    平衡二叉树 C语言实现 创建 插入 查找 销毁

    2013-12-13 16:49
    3434
  • 算法导论 之 快速排序[C语言]

    一、算法实现 快速排序的时间复杂度为O(n^2),但其通常是用于排序的最佳的使用选择,这是因为其平均性能相当好:期望的运行时间为O(nlgn)。其实现的算法如下: int quick_sort(int...

    2013-01-09 18:47
    1094
  • 算法导论 之 希尔排序[C语言]

    一、优缺点 希尔排序的时间复杂度与其增量序列有关,这涉及到数学上尚未解决的难题。迄今为止,还没有人找到最好的增量序列。其时间复杂度为O(n^s){s, 1 二、算法实现 其代码实现如下: ...

    2013-01-08 10:14
    1235
  • 算法导论 之 堆排序[C语言]

    一、算法实现 堆排序算法的时间复杂度为O(nlgn),其算法实现如下: void heap_sort(int *array, int max) { int idx = 0; build_max...

    2013-01-04 22:03
    1242
  • 算法导论 之 归并排序[C语言]

    一、算法实现 归并排序的时间复杂度为O(nlgn),其代码实现如下: int merge_sort(int *array, int min, int max) { int mid = (...

    2013-01-01 12:47
    1878
  • 算法导论 之 冒泡排序[C语言]

    一、算法实现 冒泡排序的时间复杂度为O(n^2),其实现代码如下: int bubble_sort(int *array, int num) { int i=0, j=0, idx=0, m...

    2013-01-01 09:28
    1420
  • 算法导论 之 插入排序[C语言]

    一、算法实现 插入排序的时间复杂度为O(n^2),其实现算法如下: int insert_sort(int *array, int num) { int i=0, j=0; for(j=2; j...

    2013-01-01 01:50
    1646

CODIS
514050

img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部