算法设计期末总结

第一部分:算法基础

1、算法五个特征:

零个或多个输入、至少一个输出、确定性、能行性、有穷性。 算法就是求解一类问题的任意一种特殊的方法。

联系:算法+数据结构=程序,算法是程序设计的核心,算法的好坏程度上决定了一个程序的效率。一区别:算法是解决问题的步骤,程序是算法的代码实现依靠程序来完成功能,程序作为算法的灵魂。2、算法意义:

3、算法与程序的联系与区别:

个好的算法可以降低一个程序运行的时间复杂度和空间复杂度。

程序是结果算法是手段,编写一个同样功能的程序,使用不同的算法,可以让程序的体积和效率有很大的该变。

4、好算法的特性:

正确性、简明性、效率、最优性(健壮性、可靠性)。 程序所依赖的算法、问题规模和输入数据、计算机系统性能 5、影响程序运行的时间因素:

6、时间复杂性分为3坏情况下的时间复杂性。 7、渐进表示法:

大O 几号(渐进上界):

定义:设函数f(n)和g(n)c 和n 0, 使得当

n>=n0时,有f(n)

Ω记号(渐进紧界):

定义:设有函数f(n)和g(n)c 和n 0,使得

当n>= n0时,有f(n)>=cg(n),Ω(g(n)),omega notation)【算法设计与分析c++描述第二版陈惠南p20

Θ记号(渐进下界):

定义:设有函数如果存在正常数c1,c2和n

0, 使得当小

且f(n)!= Ω(g(n))。

n>=n0)f(n)= Θ(g(n)),称为Θ记号(Theta natation)。

***渐进表示法

设有f(n)和g(n),分析。

1】f(n)=20n+logn,g(n)=n+nlog3n; 当n ≥3时,log n 2n 。可

选 c =

21

,n 0=3。对于n ≥n 0,f (n ) ≤cg (n ) ,即f (n ) =O(g (n )) 。注意:是f (n ) 和g (n ) 2

的关系。

2】f (n )=n2/logn,g(n)=nlog2n; 当 n

≥4 时,log n

c =1,n 0=4。对于 n ≥n 0,f (n )

3】f(n)=(logn)因为

logn

,g(n)=n/logn;

f (n ) =(logn ) log n =n log(logn )

g (n ) =n /log n =n log n 2

。当

n ≥4

时,

第三部分:贪心法

背包问题:

n=5,m=11,(p0…p4)=(8,6,15,6,3) (w0…w5)=(2,3,5,2,3),

最优量度标准:优先选择单位重量收益最大的物品放入背包。 (p0/w0, p1/w1, p2/w2, p3/w3,p4/w4)=(4,2,3,3,1) 最优解为:(x0,x1,x2,x3,x4,x5,x6) =(1,2/3,1,1,0) 最大收益为:8+6*2/3+15+6)=33

分析所有最优解。。。。。。。。。。。。。。。。。

1、简述贪心算法的思想策略、算法特点,以及它所具有的两种性质各是什么? 思想策略: 贪心法是一种求解最优化问题的算法设计策略。

算法特点: 贪心法是通过分步决策的方法来求解问题的, 贪心法在求解问题的每一步上做出某种决策, 产生N –元组解的一个分量。

性质: 贪心选择性质和最优子结构性质。 2、简要说明贪心算法的两个基本要素。

贪心选择性质: 贪心法要求根据题意, 选定一种最优量度标准, 作为选择当前分量值的依据, 这种在贪

***********详解s[i][j]******************************

以此题为例,A0,A1,A2,A3,A4,A5.

第五部分:回溯法

1、回溯法法在问题的解空间树中,按深度优先策略,从根结点出发搜索解空间树。

第六部分:分枝界限法

1、分枝限界法法在问题的解空间树中,按广度优先策略,从根结点出发搜索解空间。

***

附加***

回溯法和分支限界法的不同之处。

: . 如果在运用搜索算法是使用剪枝函数, 回溯法的求解目标是在状态空间树上找出满足约束条件的所有解, , 或是在满足约束条件的解中找出最优解. 递推关系式

#include

#define MAX 99 //定义无穷大 struct Node{ };

class Graph {

int length; //权值(源点到该结点的路径长度) inti; //结点编号

friend bool operator

returna.length>b.length;

i =j ⎧⎪0

m [i ][j ]=⎨min {m [i ][k ]+m [k +1][j ]+p p p } i

public:

voidShorestPaths(int); voidShowDist(); Graph(); ~Graph(); private:

int n; //图的节点个数 int *prev; //存放顶点的前驱节点 int **c; //存放图的邻接矩阵

int *dist; //存放源点到各个顶点的距离 };

Graph::Graph() {

intwi = 0; intyi = 0; int s;

inti,j,m;

cout>n;

cout>s;

c = new int*[n]; for (wi = 0; wi

dist = new int[n];

prev = new int[n];

for (wi = 0; wi

( ij // (无穷大(99)代表节点间无边

cin>>i>>j>>m;

c[i][j] = m;

}

for (wi = 0; wi

dist[wi] = MAX; prev[wi] = -1; } }

Graph::~Graph() {

for(inti=0;i

delete []c;

delete []dist; delete []prev; }

void Graph::ShowDist() {

cout

cout

cout=0 ) { cout

if(temp) cout

temp = prev[temp]; } cout

{

E.i = v; E.length = 0; dist[v] = 0;

cout

{ if ((c[E.i][j] != MAX) && (E.length + c[E.i][j]

{

dist[j] = E.length + c[E.i][j]; prev[j] = E.i; //记录前驱结点

//加入活结点优先队列 ,若节点为终点,则不加入活结点队列 if (j != n-1) { Node N; N.i = j;

N.length = dist[j]; H.push(N); //N结点入队

cout

}

}

} //for

if(!H.empty())

{

E=H.top();//出队 cout

H.pop(); //删除該元素

cout

break; } //while }

int main() {

Graph g;

}


相关文章

  • WSN期末考试总结报告2
  • 北京师范大学珠海分校信息技术学院 期末考试总结报告 课程名称: 无线传感网络 任课教师:__杨博雄__ 姓名______董兆基______ 学号____0901040017_______ 班级_09电子1班_______ 基于zigbee的 ...

  • 网络传媒系工作总结
  • 网络传媒系工作总结 时光飞逝,一个学期过去了,回顾这一年所从事的教学工作,总的说来是比较顺利地完成任务。在工作中我享受到收获的喜悦,当然也发现一些问题。现将本学年工作情况总结如下: 在思想方面,本人能积极参加政治学习,关心国家大事,拥护党中 ...

  • 数字信号处理期末论文
  • 题 目: 基于DSP 的FFT 程序设计的研究 作 者 系 别 指导老师 完成时间 2013.06 届 别 专 业 职 称 内容摘要 快速傅里叶变 (Fas Fourier Tranformation,FFT) 是将一个大点数N 的DFT ...

  • [数据结构]期末考试及答案
  • <数据结构> 期末考试试卷 考生注意:1.本试卷满分100分. (C ).各叶子结点的带权路径长度之和 (D ).根结点的值 10.线索二叉链表是利用( )域存储后继结点的地址. (A ).lchild (B ).data (C ...

  • [计算机操作系统期末考试试题]试题9
  • A. 首次适应法 B.最佳适应法 C.最坏适应法 D.循环首次适应法 13. LRU置换算法所基于的思想是( ). A. 在最近的过去用得少的在最近的将来也用得少 B. 在最近的过去用得多的在最近的将来也用得多 C. 在最近的过去很久未使用 ...

  • 中南大学大规模集成电路试卷及答案合集
  • ---○---○ --- --- - 线 时间110分钟封密卷评 ------2013 ~2014 理处学时,开卷,总分100分,占总评成绩70 % 分 0按一.填空题(本题40分,每个空格1分) 绩成1. 所谓集成电路,是指采用 ,把一个 ...

  • 社会服务项目管理期末复习
  • 根本性问题 为什么要学习社会服务项目管理 在社会服务领域运用项目的方法开展工作与服务 1利用项目管理方法开展工作,能够很好的进行社会服务项目评估 2对于提高服务质量有重要作用 3可以使服务项目申请者重申自己的宗旨,明确自己的服务目标 2可以 ...

  • 数字高程模型期末整理复习资料
  • 数字高程模型期末复习资料 第一章 1. 高程用来描述地形表面的起伏形态,传统的高程模型是等高线,其数学意义是定义在二维地理空间上的连续曲面函数,当此高程模型用计算机来表达时,称为数字高程模型. 2. 的定义为:数字高程模型是对二维地理空间上 ...

  • 数字信号处理期末试卷(含答案)
  • 一. 填空题(每题2分,共10题) 1. 1. 对模拟信号(一维信号,是时间的函数)进行采样后,就是进行幅度量化后就是 信号. 2. 2. FT [x (n )]=X (e ) ,用x (n ) 求出Re[X (e )]对应的序列 为 . ...

  • 高一下学期数学教学计划
  • 一、上学期教学回顾 高一共四个教学班,共计160余人。杨文国带高一(一)班,高一(二)班;张忠杰带高一(三)班和高一(四)班。其中各班期末八校联考的成绩分别为:50.6分,32.8分,27.2分,34.5分,总平36.9分。学期中途因张忠杰 ...

© 2024 范文参考网 | 联系我们 webmaster# 12000.net.cn