算法导论读书笔记(13)目录红黑树旋转插入情况1 : z 的叔父结点 y 是红色的情况2 :
z 的叔父结点 y 是黑色的,而且 z 是右孩子情况3 : z 的叔父结点 y 是黑色的,而且 z 是左孩子删除情况1 : x 的兄弟 w 是红色的情况2 :
x 的兄弟 w 是黑色的,且 w 的两个孩子都...
分类:
其他好文 时间:
2014-05-21 17:22:47
阅读次数:
451
问题描述
最长公共子序列,英文缩写为LCS(Longest Common Subsequence)。其定义是,一个序列 S ,如果分别是两个或多个已知序列的子序列,且是所有符合此条件序列中最长的,则 S 称为已知序列的最长公共子序列。
解决最长公共子序列,一种常用的办法,就是穷举法,组合出所有的情况,但是这样对于长序列的情况来说,是非常不实际。。
假设现在有...
分类:
其他好文 时间:
2014-05-21 13:55:35
阅读次数:
260
和其他的DP帖子只是灌输思考之后的结果不同,这篇是DP算法的自我体会,应该是设计DP算法的思考过程。
斯以为,这才是拿到一问题,从思考到解决最精华的部分:)
犹记得第一次看到算法导论上拿最长与最短路径来说明DP中最优子结构证明过程的一个细节的时候,心里激动不已,国内的教材完全不考虑这个,而是把伟人思考之后的东西呈现给新人。
我第一看到,心想,这就是我要的东西,包括之前的loop in...
分类:
其他好文 时间:
2014-05-20 15:40:21
阅读次数:
215
算法导论上的题目,用动态规划算法解矩阵链乘法问题需要时间为O(n^3),空间为O(n^2)。
问题描述:
给定n个矩阵构成的一个链(A1*A2*A3……*An),其中i=1,2,……n,矩阵Ai的维数为p(i-1)*p(i),对于乘积A1*A2*A3……*An以一种最小化标量乘法次数的方式进...
分类:
其他好文 时间:
2014-05-20 11:46:29
阅读次数:
195
插入排序 最好情况输入数组开始时候就是满足要求的排好序的,时间代价为θ(n);
最坏情况输入数组是按逆序排序的,时间代价为θ(n^2)。 归并排序
归并排序采用了算法设计中的分治法,分治法的思想是将原问题分解成n个规模较小而结构与原问题相似的小问题,递归的解决这些子问题,然后再去合并其结果,得到原问...
分类:
其他好文 时间:
2014-05-19 22:13:51
阅读次数:
284
主要内容: 堆、最大堆、最小堆的基本概念 堆的操作:调整、创建、排序 采用堆实现优先级队列
基本概念 堆(heap)亦被称为:优先队列(priority queue) 逻辑定义:
n个元素序列{k1,k2...ki...kn},当且仅当满足下列关系时称之为堆: (ki = k2i,ki >= k2i...
分类:
其他好文 时间:
2014-05-19 08:45:41
阅读次数:
264
习题4-5 3rd edition (4-6 2nd
edition)解法1:将芯片两两配对,对于后三种情况(至少其中一个是坏的),可以直接将该对芯片丢弃,这样丢弃的好的一定不会超过坏的。剩下的都是第一种情况,以及可能剩下的单个未配对的。如果数量为偶数,即没有未配对的,那么“好好”对数一定超过“坏坏...
分类:
其他好文 时间:
2014-05-16 09:38:50
阅读次数:
453
前言
学习任何一个稍有难度的技术,要对其有充分理性的分析,之后果断做出决定---->也就是人们常说的“多谋善断";本系列虽然涉及的是socket相关的知识,但学习之前,更想和广大程序员分享的是一种心境:学习是一个循序渐进的过程,心态应该随时调节,保持戒骄戒躁的状态。比如最近在看网易公开课MIT《算法导论》,老师提到,学习算法之前要计算机数学+离散数学+概率论等课程的知识,所以一直学不好算...
分类:
编程语言 时间:
2014-05-15 03:40:31
阅读次数:
279
前言
学习任何一个稍有难度的技术,要对其有充分理性的分析,之后果断做出决定---->也就是人们常说的“多谋善断";本系列虽然涉及的是socket相关的知识,但学习之前,更想和广大程序员分享的是一种心境微笑:学习是一个循序渐进的过程,心态应该随时调节,保持戒骄戒躁的状态。比如最近在看网易公开课MIT《算法导论》,老师提到,学习算法之前要计算机数学+离散数学+概率论等课程的知识,所以一直学不好算法的程序员不妨从基础入手,这都是中国式教育惹的祸啊!(此处省略一万字......)...
分类:
编程语言 时间:
2014-05-14 14:30:56
阅读次数:
375
//升序void insertion_sort(vector &num){
for(int i = 1; i =0 && num[j] >= val){
num[j+1] = num[j];...
分类:
其他好文 时间:
2014-05-13 11:42:59
阅读次数:
190