码迷,mamicode.com
首页 >  
搜索关键字:算法导论    ( 1209个结果
快速排序和归并排序
在算法导论中众多的排序算法之中,最最重要的,也是必须要提笔会写的两个算法就是快速排序算法和归并排序算法了。这两种算法都是典型的分治法策略,即将一个大问题分成一个个的小问题,再逐一解决。 快速排序流程: (1) 从数列中挑出一个基准值,一般选择中间位置的值。 (2) 将所有比基准值小的摆放在基准前面,...
分类:编程语言   时间:2015-03-14 16:50:07    阅读次数:156
算法系列笔记9(字符串匹配)
字符串匹配指有一个文本串S和一个模式串P,现在要查找P在S中的位置。 主要有以下算法: 其中朴素算法和KMP算法我们在这边blog http://blog.csdn.net/lu597203933/article/details/41124815中已经讲解过。RP算法时间复杂度较高,我也没看,想看可以看算法导论。这里主要讲解有限自动机的字符串匹配算法。 有限自动机的定义:...
分类:编程语言   时间:2015-03-13 20:48:27    阅读次数:158
算法导论学习之线性时间排序+排序算法稳定性终结
前面我们学习的几种排序算法都是基于比较的,对于任何输入数据他们都是适用的,其最坏的时间复杂度不会低于nlgn; 但对于一些比较特殊的输入数据,我们可以不采取比较的方法而是采用其它的方法对其进行排序,以达到线性的时间复杂度。下面就来介绍三种这样的算法:计数排序,基数排序,桶排序(因为这几种算法不常见,我只实现了计数排序,其它两种排序用伪代码表示)。一.计数排序 算法思想:给定n个位于0–k之...
分类:编程语言   时间:2015-03-13 18:46:59    阅读次数:170
Chapter2 Getting Started
-------------------注明----------------以下内容来自于《算法导论》 lz新手,存在各种错误以及各种不合理的地方望大家指出2.1 插入排序核心: 将一个数插入到已经排好序的有序数列中,从而得到一个新的、个数加1的有序数列形象描述:有两堆牌,左手一堆已经排好序,右手一堆...
分类:其他好文   时间:2015-03-12 09:41:41    阅读次数:119
算法导论学习之快排+各种排序算法时间复杂度总结
快排是一种最常用的排序算法,因为其平均的时间复杂度是nlgn,并且其中的常数因子比较小。一.快速排序 快排和合并排序一样都是基于分治的排序算法;快排的分治如下: 分解:对区间A[p,r]进行分解,返回q,使得A[p–q-1]都不大于A[q] A[q+1,r]都大于A[q]; 求解:对上面得到的区间继续递归进行快排 合并:因为快排是原地...
分类:编程语言   时间:2015-03-12 01:03:22    阅读次数:2694
算法导论 15.1 钢条切割
这里对这个DP问题做了代码实现,分为递归算法(自顶向下)和非递归算法(自下向上),以及拓展的自下向上算法的实现。递归算法: 1 #include 2 3 using namespace std; 4 5 int size = 10; 6 7 inline int max(int a, int ...
分类:编程语言   时间:2015-03-11 23:00:20    阅读次数:277
第八章:再谈最大子数组问题
前段时间看《算法导论》了解到最大子数组问题,但没有做习题,遗漏了一些重要的知识,现在《编程珠玑》上看到完整的讲解,还有一些算法技巧,故记录于此。1.定义问题在数组中找出元素之和最大的子数组,假定当数组元素全部为负数时,最大子数组是空数组,和为0。2.解决问题令数组为x[n],最大子数组下标为[p,q...
分类:编程语言   时间:2015-03-11 21:13:58    阅读次数:150
算法导论-堆排序
堆排序的时间复杂度是,具有空间原址性,即任何时候都只需要常数个额外的元素空间存储临时数据。一、堆二叉堆是一个数组,可看成一个近似的完全二叉树,树上的每个结点对应数组中的一个元素。除了最底层外,该树是完全充满的,而且是从左到右填充。二叉堆可以分为两种形式:最大堆和最小堆。在最大堆中除根节点外所有结点i...
分类:编程语言   时间:2015-03-11 19:04:58    阅读次数:172
算法导论学习之堆+堆排序+堆构成优先队列
注:堆分为最大堆和最小堆两种,下面我们讨论的堆都是指的最大堆,最小堆的性质与其是类似的。堆数据结构是一种数组对象,可以被视为一棵完全二叉树(这棵二叉树除最后一层外,其余每层都是填满的);我们用一个数组来存储一个堆,表示堆的数组有两个属性:length[A]表示的是数组中的元素个数,headsize[A]表示堆中元素个数(也就是说数组中的元素不一定都是堆中的元素)。 下面不加证明的给出一些堆的性质:...
分类:编程语言   时间:2015-03-11 00:46:49    阅读次数:192
归并排序及统计数组逆序对
?? 1.归并排序 《算法导论》P19 参考网址: 白话经典算法系列之五 归并排序的实现 - MoreWindows Blog - 博客频道 - CSDN.NET http://blog.csdn.net/morewindows/article/details/6678165 #include "stdafx.h" #i...
分类:编程语言   时间:2015-03-10 10:24:52    阅读次数:241
1209条   上一页 1 ... 76 77 78 79 80 ... 121 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!