《算法导论》学习笔记
江湖笑
喜欢真诚相交,向往自由,幽默乐观,另外,超级喜欢计算机技术。
展开
-
算法入门章——引出贯穿《算法导论》全书的算法分析和设计框架
刚刚认真学习了第二章,习题还未做。现在趁热打铁,先来凭空总结和回忆一下整个过程。本章主要线索:通过引入两个算法,从插入排序分析和设计排序算法,引出了整本书后续各章节的算法设计和分析的框架。这个框架归纳起来即是:引入问题并以实际情景进行思考-->抽象出精确的算法描述(这里就包含了所用的数据结构)-->伪码表示-->证明算法的正确性-->算法分析-->算法设计。本章先引入的是插原创 2012-05-02 11:39:42 · 749 阅读 · 0 评论 -
算法导论第二章部分习题自我解答
练习:2.3-2:去掉合并排序中的哨兵值#include using namespace std;void Merge(int* A, int p, int q, int r){ int n1 = q-p+1; int n2 = r-q; int *L = new int[n1+1]; int *R = new int[n2+1]; for(int i=0; i<=n1-原创 2012-05-02 17:39:50 · 827 阅读 · 0 评论 -
《算法导论》第六章之堆和优先级队列相关算法C语言实现
#include int heap_size = 10;void max_heapify(int *A, int i){ //维持最大堆性质 int l = 2 * i + 1; int r = 2 * i + 2; int largest = 0; if(l A[i]) largest = l; else largest = i; if(r A[largest])原创 2012-05-09 21:15:02 · 1251 阅读 · 0 评论