当前位置:文档之家› 计算机算法设计与分析课程设计

计算机算法设计与分析课程设计

计算机算法设计与分析课程设计
计算机算法设计与分析课程设计

用分治法解决快速排序问题及用动态规划法解决最优二叉搜索树问题及用回溯法解决图的着色问题

一、课程设计目的:

《计算机算法设计与分析》这门课程是一门实践性非常强的课程,要求我们能够将所学的算法应用到实际中,灵活解决实际问题。通过这次课程设计,能够培养我们独立思考、综合分析与动手的能力,并能加深对课堂所学理论和概念的理解,可以训练我们算法设计的思维和培养算法的分析能力。

二、课程设计内容:

1、分治法:

(2)快速排序;

2、动态规划:

(4)最优二叉搜索树;

3、回溯法:

(2)图的着色。

三、概要设计:

分治法—快速排序:

分治法的基本思想是将一个规模为n的问题分解为k个规模较小的子问题,这些子问题互相独立且与原问题相同。递归地解这些子问题,然后将各个子问题的解合并得到原问题的解。分治法的条件:

(1)该问题的规模缩小到一定的程度就可以容易地解决;

(2) 该问题可以分解为若干个规模较小的相同问题,即该问题具有最优子结构性质;(3) 利用该问题分解出的子问题的解可以合并为该问题的解;

(4) 该问题所分解出的各个子问题是相互独立的,即子问题之间不包含公共的子子问题。

抽象的讲,分治法有两个重要步骤:

(1)将问题拆开;

(2)将答案合并;

● 动态规划—最优二叉搜索树:

动态规划的基本思想是将问题分解为若干个小问题,解子问题,然后从子问题得到原问题的解。设计动态规划法的步骤:

(1)找出最优解的性质,并刻画其结构特征; (2)递归地定义最优值(写出动态规划方程); (3)以自底向上的方式计算出最优值;

(4)根据计算最优值时得到的信息,构造一个最优解。 ● 回溯法—图的着色

回溯法的基本思想是确定了解空间的组织结构后,回溯法就是从开始节点(根结点)出发,以深度优先的方式搜索整个解空间。这个开始节点就成为一个活结点,同时也成为当前的扩展结点。在当前的扩展结点处,搜索向纵深方向移至一个新结点。这个新结点就成为一个新的或节点,并成为当前扩展结点。如果在当前的扩展结点处不能再向纵深方向移动,则当前的扩展结点就成为死结点。换句话说,这个节点,这个结点不再是一个活结点。此时,应往回(回溯)移动至最近一个活结点处,并使这个活结点成为当前的扩展结点。回溯法即以这种工作方式递归的在解空间中搜索,直到找到所要求的解或解空间中以无活结点为止。

四、详细设计与实现:

● 分治法—快速排序

快速排序是基于分治策略的另一个排序算法。其基本思想是,对于输入的子数组[]r p a :,按以下三个步骤进行排序:

(1)、分解(divide) 以元素[]p a 为基准元素将[]r p a :划分为三段[]1:-q p a ,[]q a 和,[]r q a :1+使得[]1:-q p a 中任何一个元素都小于[]q a ,而[]r q a :1+中任何一个元素大于等于[]q a ,下标在划分过程中确定。

(2)、递归求解(conquer) 通过递归调用快速排序算法分别对[]1:-q p a 和[]r q a :1+进行排序。

(3)、合并(merge) 由于[]1:-q p a 和[]r q a :1+的排序都是在原位置进行的,所以不必进行任何合并操作就已经排好序了。

算法实现题: 现将数列{23 21 34 45 65 76 86 46 30 39 89 20 2 3 8 47 38 54 59 40}进行快速排序。

源程序如下:

#include

using namespace std;

#define size 20

int partition(int data[],int p,int r)

{

int n=data[p],i=p+1,j=r,temp;

//将

//将>n的元素交换到右边区域

while(true)

{

while(data[i]

while(data[j]>n) --j;

if(i>=j)

break;

temp=data[i]; data[i]=data[j]; data[j]=temp;

}

data[p]=data[j];

data[j]=n;

return j;

}

void quick_sort(int data[],int p,int r)

{if(p>=r)

return;

int q=partition(data,p,r);

quick_sort(data,p,q-1); //对左半段排序

quick_sort(data,q+1,r); //对右半段排序

}

int main()

{

int i,n,data[size];

printf("请输入要排列的数目(<=20):");

scanf("%d",&n);

printf("请输入要排列的数列:\n");

for(i=0;i

scanf("%d",&data[i]);

quick_sort(data,0,n-1);

printf("排列后的数列为:\n");

for(i=0;i

printf( "%d ",data[i]);

printf("\n");

return 0;

}

运行结果如下:

图1 动态规划—最优二叉搜索树

1、最优二叉搜索树问题描述和分析:

设{}n x x x S ,,,21 =是有序集,且n x x x <<< 21,表示有序集S 的二叉搜索树利用二叉树的结点存储有序集中的元素。它具有下述性质:存储于每个结点中的元素x 大于其左子树中任一结点所存储的元素,小于其右子树中任一结点所存储的元素。二叉树的叶结点是形如()1,+i i x x 的开区间,在表示S 的二叉搜索树中搜索元素x ,返回的结果有两种情况:

(1)在二叉搜索树的内结点中找到i x x =。

(2)在二叉搜索树的叶结点中确定()1,+∈i i x x x 。

设在第(1)中情形中找到元素i x x =的概率为;在第(2)种情形中确定()1,+∈i i x x x 的概率为。其中约定+∞=-∞=+10,n x x 。显然有:

;1,0;0,0n j b n i a j i ≤≤≥≤≤≥11

=+∑∑==n

j j n i i b a

()n n a b a b a ,,,,,110 称为集合S 的存取概率分布。

在表示S 的二叉搜索树T 中,设存储元素的结点深度为;叶结点()

1,+j j x x 的结点深度为,则:

()∑∑==++=n

j j

j i n i i d a c b p 0

1

1

表示在二叉搜索树T 中进行一次搜索所需要的平均比较次数,p 又成为二叉搜索树T 的平均路长。在一般情况下,不同的二叉搜索树的平均路长是不相同的。

最优二叉搜索树问题是对于有序集S 及其存取概率分布()n n a b a b a ,,,,,110 ,在所有表示有序集S 的二叉搜索树中找到一棵具有最小平均路长的二叉搜索树。 2、最优子结构性质:

二叉搜索树T 的一棵含有结点j i x x ,, 和叶结点()()

11,,,,+-j j i i x x x x 的子树可以看作是有序集{}

j i x x ,, 关于全集合{}

11,,+-j i x x 的一棵二叉搜索树,其存取概率为以下的条件概率:

()j k i w b b ij k k ≤≤=/ ()j h i w a a ij h h ≤≤-=1/

式中,n j i a b b a w j j i i ij ≤≤≤++++=-1,1 。

设是有序集{}

j i x x ,, 关于存取概率{}

j j i i a b b a ,,,,1 -的一棵最优二叉搜索树,其平均路长为。的根结点存储元素。其左右子树和的平均路长分别为和。由于和中结点深度是它们在中的结点深度减1,故有:

r j m l m i j i j i j i p w p w w p w ,11,,,,+-++=

由于是关于集合{}1,,-m i x x 的一棵二叉搜索树,故1,-≥m i l p p 。若1,->m i l p p ,则用

1,-m i T 替换可得到平均路长比更小的二叉搜索树。这与是最优二叉搜索树矛盾。故是一棵最

优二叉搜索树。同理可证也是一棵最优二叉搜索树。因此最优二叉搜索树问题具有最优子结构性质。

3、递归计算最优值:

最优二叉搜索树的平均路长为,则所求的最优值为n p ,1。由最优二叉搜索树问题的最优子结构性质可建立计算的递归式如下:

{}j i p w p w w p w j k j k k i k i j

k i j i j i j i ≤++=++--≤≤,,1,11,1,,,,m in

初始时,n i p i i ≤≤=-1,01,。

记j i j i p w ,,为()j i m ,,则()n n n p p w n m ,1,1,1,1==为所求的最优值。 计算()j i m ,的递归式为:

()()(){}j i j k m k i m w j i m j

k i j i ≤++-+=≤≤,,11,,m in ,

()n i i i m ≤≤=-1,01,

据此,可设计出解最优二叉搜索树问题的动态规划算法。

算法实现题: 给出标识符集{1,2,3}={do,if,stop}存取概率,若

b1=0.4 b2=0.2

b3=0.05 a0=0.2 a1=0.05 a2=0.05 a3=0.05构造一棵最优二叉搜索树 源程序如下: #include using namespace std;

void OptimalBinarySearchTree(float a[],float b[],int n,float m[][20],int s[][20],float w[][20]) { //求解最优值的方法 int i,r,k;

float t;

for(i=0;i<=n;i++){

w[i+1][i]=a[i]; //搜索不到的点,最优解为0

m[i+1][i]=0;

}

for(r=0;r

for(i=1;i<=n-r;i++){

int j=i+r; //左子树为空

w[i][j]=w[i][j-1]+a[j]+b[j];

m[i][j]=m[i+1][j];

s[i][j]=i;

for(k=i+1;k<=j;k++){

t=m[i][k-1]+m[k+1][j];

if(t

{ //以k为根节点,左子树不为空

m[i][j]=t;

s[i][j]=k;

}

}

m[i][j]+=w[i][j]; }

for(i=1;i<=n;i++)

for(int j=1;j<=n;j++)

cout<<"s["<

}

void print(int i,int j,int s[][20],int S[]) //递归输出结果

{

if(j>=i){

int k=s[i][j];

cout<<"(";

print(i,k-1,s,S);

cout<<")";

cout<<" "<

cout<<"(";

print(k+1,j,s,S);

cout<<")";

}

}

int main()

{ //主函数

int n,i;

float a[20],b[20],m[20][20],w[20][20];

int s[20][20],S[20];

cout<<"请输入有序集元素的个数n:"<

cin>>n;

cout<<"请输入有序集各元素的值S[i](一共"<

for(i=1;i<=n;i++)

cin>>S[i];

cout<<"请输入概率数组a的各元素的值a[i](一共"<

for(i=0;i<=n;i++)

cin>>a[i];

cout<<"请输入概率数组b的各元素的值b[i](一共"<

for(i=1;i<=n;i++)

cin>>b[i];

OptimalBinarySearchTree(a,b,n,m,s,w);

cout<<"最优值即平均步长为:"<

}

运行结果如下:

图2

回溯法—图的着色 1、图的m 着色问题描述:

给定无向连通图G 和m 种不同的颜色。用这些颜色为图G 的各顶点着色,每个顶点着一种颜色。是否有一种着色法使G 中每条边的2个顶点着不同颜色。这个问题是图的m 可着色判定问题。若一个图最少需要m 种颜色才能使图中每条边连接的2个顶点着不同颜色,则称这个数m 为该图的色数。求一个图的色数m 的问题称为图的m 可着色优化问题。

2、算法设计:

一般连通图的可着色法问题并不仅限于平面图。给定图()E V G ,=和m 种颜色,如果这个图不是m 可着色,则给出否定答案;如果这个图是m 可着色的,找出所有不同的着色方法

下面根据回朔法的递归描述框架Backtrack 设计图的m 着色算法。用图的邻接矩阵a 表示无向量连通图()E V G ,=。若()j i ,属于图()E V G ,=的边集E ,则[][]1=j i a ,否则

[][]0=j i a 。整数1,2,…,m 用来表示m 种不同颜色。顶点所有颜色用表示,数组[]

n x :1是问题的解向量。问题的解空间可表示为一棵高度为n+1的完全m 叉树。解空间树的第

()n i i ≤≤1层中每一结点都有m 个儿子,每个儿子相应于的m 个可能的着色之一。 第n+1

层结点均为叶结点。

在下面的解图的m 可着色问题的回溯法中,()i Backtrack 搜索解空间中第层子树。类

Color 的数据成员记录解空间中结点信息,以减少传给Backtrack 的参数。sum 记录当前

已找到的m 着色方案数。

在算法Backtrack 中,当n i >时,算法搜索至叶结点,得到新的m 着色方案,当前找到的m 着色方案数sum 则增1。而当n i ≤时,当前扩展结点Z 的每一个解空间中内部结点.该结点有[]m i x ,,2,1 =共m 个儿子结点.对当前扩展结点Z 的每一儿子结点,有方法ok 检查其可行性,并以深度优先的方式递归的对可行子树搜索,或减去不可行树。

算法实现题: 给定如图3所示的一个无向连通图G ,现有4种不同的颜色,用这4种

颜色为图G 的各顶点着色,每个顶点着一种颜色。要求:G 中每条边的2个顶点着有不同的颜色。问一共有多少种着色方案?

图3

源程序如下: #include using namespace std;

int n; //图的顶点个数 int m; //可用颜色数 int i,j;

int a[10][10]; //程序中使用时从下标1开始;程序中用于存储图的邻接矩阵 int x[10]; //用于存储当前解

long sum; //当前已找到的可着色方案数 bool Ok(int k) { for(int j=1;j<=n;j++) { if((a[k][j]==1)&&(x[j]==x[k])) //a[k][j]==1表示的是第k 点和第j 点是相连的

return false;

}

return true;

1 2

3

5

4

}

void Backtrack(int t)

{

if(t>n) //t是表示的第t行叶结点;图的m着色共有n个结点{

sum++;

cout<<" 第"<

for(int i=1;i<=n;i++)

{

cout<

}

cout<

}

else

{

for(int i=1;i<=m;i++)

{

x[t]=i;

if(Ok(t))

{

Backtrack(t+1); //判断t+1结点的颜色是不是正确}

x[t]=0; //把t+1结点的颜色换一种}

}

}

long mColoring(int mm)

{

m=mm;

sum=0;

Backtrack(1);

return sum;

}

void main()

{

cout<<"\n\t==========图的m着色问题============\n";

cout<<"输入图的顶点数与可用的颜色数:\n";

cin>>n>>m;

cout<<"\n==========输入图的邻接矩阵\n";

for(i=1;i<=n;i++)

for(j=1;j<=n;j++)

cin>>a[i][j];

cout<<"\n==========判断可着色性\n";

mColoring(m);

if(sum==0)

cout<<" 无可行方案!"<

cout<<"-------------------------------------------------------------------------------"<

}

运行结果如下:

图4

图5

五、总结:

通过本次课程设计,使我对快速排序、最优二叉搜索树以及图的m着色设计的基本过程的设计方法、步骤、思路、有了一定的了解与认识。在这次课程设计过程中,我认识到只是知道课本上的理论知识是远远不够的,我们还必须要深切的理解每个算法的思想,并且能够利用c++语言去编写相关的代码,经过不断的修改、调试,使之能解决相应的问题,最终能运用

到实际案例中去。

对我们来说,实际能力的培养至关重要,而这种实际能力的培养单靠课堂教学是远远不够的,必须从课堂走向实践。而这次的课程设计,正好给了我们一个机会让我们找出自身状况与实际需要的差距,并在以后的学习期间及时补充相关知识,为求职与正式工作做好充分的知识、能力准备,从而缩短从校园走向社会的心理转型期。

《计算机算法设计与分析》习题及答案

《计算机算法设计与分析》习题及答案 一.选择题 1、二分搜索算法是利用( A )实现的算法。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法 2、下列不是动态规划算法基本步骤的是( A )。 A、找出最优解的性质 B、构造最优解 C、算出最优解 D、定义最优解 3、最大效益优先是(A )的一搜索方式。 A、分支界限法 B、动态规划法 C、贪心法 D、回溯法 4. 回溯法解旅行售货员问题时的解空间树是( A )。 A、子集树 B、排列树 C、深度优先生成树 D、广度优先生成树 5.下列算法中通常以自底向上的方式求解最优解的是(B )。 A、备忘录法 B、动态规划法 C、贪心法 D、回溯法 6、衡量一个算法好坏的标准是( C )。 A 运行速度快 B 占用空间少 C 时间复杂度低 D 代码短 7、以下不可以使用分治法求解的是( D )。 A 棋盘覆盖问题 B 选择问题 C 归并排序 D 0/1背包问题 8. 实现循环赛日程表利用的算法是(A )。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法 9.下面不是分支界限法搜索方式的是(D )。 A、广度优先 B、最小耗费优先 C、最大效益优先 D、深度优先 10.下列算法中通常以深度优先方式系统搜索问题解的是(D )。 A、备忘录法 B、动态规划法 C、贪心法 D、回溯法

11.备忘录方法是那种算法的变形。( B ) A、分治法 B、动态规划法 C、贪心法 D、回溯法 12.哈夫曼编码的贪心算法所需的计算时间为(B )。 A、O(n2n) B、O(nlogn) C、O(2n) D、O(n) 13.分支限界法解最大团问题时,活结点表的组织形式是(B )。 A、最小堆 B、最大堆 C、栈 D、数组 14.最长公共子序列算法利用的算法是(B)。 A、分支界限法 B、动态规划法 C、贪心法 D、回溯法 15.实现棋盘覆盖算法利用的算法是(A )。 A、分治法 B、动态规划法 C、贪心法 D、回溯法 16.下面是贪心算法的基本要素的是(C )。 A、重叠子问题 B、构造最优解 C、贪心选择性质 D、定义最优解 17.回溯法的效率不依赖于下列哪些因素( D ) A.满足显约束的值的个数 B. 计算约束函数的时间 C.计算限界函数的时间 D. 确定解空间的时间 18.下面哪种函数是回溯法中为避免无效搜索采取的策略(B ) A.递归函数 B.剪枝函数 C。随机数函数 D.搜索函数 19. (D)是贪心算法与动态规划算法的共同点。 A、重叠子问题 B、构造最优解 C、贪心选择性质 D、最优子结构性质 20. 矩阵连乘问题的算法可由( B )设计实现。 A、分支界限算法 B、动态规划算法 C、贪心算法 D、回溯算法 21. 分支限界法解旅行售货员问题时,活结点表的组织形式是( A )。

计算机科学与技术课程设计

一、课程设计题目 二叉平衡排序树 摘要问题描述:从一棵空树开始创建,在创建过程中,保证树的有序性,同时还要针对树的平衡性做些调整。最终要把创建好的二叉排序树转换为二叉平衡排序树。 基本要求:1.创建(插入、调整、改组) 2.输出 开发工具:windows XP操作系统,Microsoft visual c++ 6.0 编译系统; 关键词:C++ ; 二、设计主要目的及意义 目的: 1.熟悉掌握二叉树的基本操作 2.熟悉二叉树的创建(插入、调整、改组),输出以及把二叉排序树转换为二 叉平衡排序树 3.更进一步掌握有关二叉排序树的操作 意义: 软件课程设计是计算机科学与技术专业软件方向的一个重要环节,是语言类课程学习的总结。通过课程设计使我们加深对程序设计的理解,掌握程序开发的基本方法,深化学生面向对象的编程设计思想和新一代程序设计的逻辑思维方式,把课堂上所学到的多个单元串到一起,提高我们在软件设计过程中分析问题和解决问题的实际动手能力,使我们的理论知识和实践技能得到共同发展,最终提高我们解决问题和分析问题的能力。为我们踏上工作岗位之前提供了一次专业研究和项目开发的宝贵实践机会,为今后的工作积累经验。

三、课程设计的过程 主要算法说明: 1.主要数据结构定义 typedef struct node node ; Struct node { Node*parent; Node*left; Node*right; Int balance;//左右子树高度之差 Int key; } 2.主要函数说明 Int scarchNode(int key, node* root, node*parent):按key查找结点 Node* minNode(node* root):树root的最小结点 Node* maxNode(node* root):树root的最大结点 Node* preNode(node* target):求前驱结点 Node* nextNode(node* targer):求后继结点 node* adjustAVL(node* root, node* parent, node* child);调整,保证二叉树的平衡性 Node* insertNode(int key, node* root):插入 Node* deletevode(int key, node* root):删除 Node*createAVL(int* data, int size):创建新的二叉树 Void interordertraverse (node*root):中序遍历 Void preordertraverse(node* root):先序遍历 3.二叉排序树的插入和删除 a.二叉排序树的插入 在二叉排序树插入新结点,要保证插入后的二叉树仍符合二叉排序树的定义 插入过程:若二叉排序树正存在,则返回根结点;

软件综合课程设计报告模板

(课程设计封皮一页上用已经设置好的宋体四号来填写各个项目。) 计算机软件综合 课程设计报告 学院、系:吉林大学珠海学院计算机科学与技术系 专业名称:2015级软件工程专业课程设计科目:计算机软件综合课程设计 题目:******* 系统 学生姓名:(小组所有成员的学号、姓名) 指导教师: 完成时间:2017年9月—2018年1月

目录 1引言 (4) 1.1编写目的 (4) 1.2背景说明 (4) 2 需求分析 (4) 2.1系统总体目标 (4) 2.2 系统功能 (4) 2.3数据需求 (4) 2.3数据流图 (5) 3 数据库概念结构设计 (5) 3.1系统E-R模型 (5) 3.2模块E-R模型 (5) 4 数据库逻辑结构设计 (5) 4.1 逻辑结构设计 (5) 4.2物理结构设计 (6) 5 安全性设计 (6) 5.1 身份验证模式 (6) 5.2 登陆管理 (6) 5.3 权限管理 (6) 6 源代码及其实现 (7)

5.1 系统开发技术 (7) 5.2 模块1设计及其实现 (7) 5.3 模块2设计及其实现 (7) 7 总结 (7) 6.1 课程设计心得体会 (7) 6.2 建议 (7) 8 参考文献 (7)

题目(三号,黑体,居中) 说明:一组只写一份报告,即下面内容,自己也可以根据实际情况进行调整和补充。 每个人写一份《课程设计成绩评定表》附在后面。 1引言 1.1编写目的 1.2背景说明 1.系统名称:公交查询系统 2.该项目的提出者:************ 3.开发者:********** ********* 4.运行该软件的单位:公交公司及广大乘客 2需求分析 2.1系统总体目标 2.2 系统功能 详细阐述系统的用户类型及其所属主要功能 2.3数据需求 根据系统功能整理出出系统中和数据相关的信息,要列出数据的详细信息。

大学计算机基础课程设计【最新】

《大学计算机基础》计算机实践任务书 一、计算机实践的任务 计算机实践的主要任务学习使用Frontpage 2003 制作网页,设计网站,并在网站上发布一个综合内容的网页。 二、计算机实践目的 1) 掌握演示文稿的建立、保存和打开操作方法; 2) 掌握幻灯片的外观设置方法; 3) 掌握在幻灯片中插入对象的方法; 4) 掌握幻灯片动画效果的设置方法; 5) 掌握在幻灯片中插入超级链接的方法; 6) 掌握用Word进行文本编辑的基本操作; 7) 掌握用Word进行格式排版的基本操作; 8)掌握利用Frontpage2003制作网页,并融入word和powerpoint 技术。 通过《计算机实践》更进一步深入了解和掌握各种应用软件的使用操作及综合应用,重点在培养学生自学计算机应用软件、开发应用、动手和创新能力。 三、计算机实践的内容及要求 1.学习掌握网页制作软件FrontPage 2003,制作网页; 2.学习掌握中文演示软件PowerPoint 2003的操作及使用,并将作品结合在网页上; 3.对于网页和幻灯片的页面修饰要求用自己制作的动画、图形、图像; 4.对于网页页面要求至少3个页面(使用超链接),网页中的内容与学生所选主题相关; 5.对于PowerPoint 2003制作的幻灯片要求至少有5张,幻灯片中的内容与学生所选主题相关; 6.学习网站的设置和网页的发布,分门别类地放置在相应的文件夹中,规范网页文件名和素材文件名,网站的首页应取名为index。 作品存放在一个文件夹中,以学号(学生卡上的学号)为文件夹名。 7.用Word字处理软件撰写出相应的计算机实践报告论文(字数要求:2000字左右)。 欢迎参观内蒙古 一、任务内容 此次我选择的内容是介绍我的家乡——内蒙古,根据自己平时对内蒙古的了 1

计算机视觉课程设计1

燕山大学 课程设计说明书题目:基于矩形物体的旋转角度测量 学院(系)电气工程学院 年级专业: 学号: 1301030200 1301030200 学生姓名: 指导教师: 教师职称:讲师 燕山大学课程设计(论文)任务书

院(系):电气工程学院基层教学单位:仪器科学与工程系 说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。 2016年 12 月 22 日燕山大学课程设计评审意见表

摘要 本文主要研究对矩形物体旋转角度的测量,并且比较每种方法的处理速度。通过对图像的滤波、二值化、边框的识别等等操作,完成对矩形物体的角度测量。本文采用五种方法分别对同一个矩形物体进行旋转角度测量,并比较其处理时间。五种方式分别为,边缘直线角度测量、对角线角度测量、矩形内部标准角度测量、角点边缘角度测量、垂线角度测量。 关键词:图像处理二值化旋转角测量定位识别

目录 第一章矩形物体的识别 (1) 1、图像滤波 (1) 2、图像的边缘检测 (2) 3、图像的二值化处理 (3) 4、图像的区域选择及处理 (4) 第二章旋转角度的测量 (6) 1、边缘直线角度测量 (6) 2、对角线角度测量 (8) 3、矩形内部标准角度测量 (9) 4、角点边缘角度测量 (10) 5、垂线角度测量 (11) 第三章算法时间的比较 (15) 参考文献 (16) 附录一 (17) 1、边缘直线角度测量程序 (17) 2、对角线角度测量程序 (17) 3、矩形内部标准角度测量程序 (18) 4、角点边缘角度测量程序 (19) 5、二值化-垂线角度测量程序 (23) 6、Soble-垂线角度测量程序 (24) 附录二 (26)

计算机控制技术课程设计报告

《计算机控制技术》课程设计单闭环直流电机调速系统

1 设计目的 计算机控制技术课程是集微机原理、计算机技术、控制理论、电子电路、自动控制系统、工业控制过程等课程基础知识一体的应用性课程,具有很强的实践性,通过这次课程设计进一步加深对计算机控制技术课程的理解,掌握计算机控制系统硬件和软件的设计思路,以及对相关课程理论知识的理解和融会贯通,提高运用已有的专业理论知识分析实际应用问题的能力和解决实际问题的技能,培养独立自主、综合分析与创新性应用的能力。 2 设计任务 2.1 设计题目 单闭环直流电机调速系统 实现一个单闭环直流电机调压调速控制,用键盘实现对直流电机的起/停、正/反转控制,速度调节要求既可用键盘数字量设定也可用电位器连续调节,需要有速度显示电路。扩展要求能够利用串口通信方式在PC上设置和显示速度曲线并且进行数据保存和查看。 2.2 设计要求 2.2.1 基本设计要求 (1)根据系统控制要求设计控制整体方案;包括微处理芯片选用,系统构成框图,确定参数测围等; (2)选用参数检测元件及变送器;系统硬件电路设计,包括输入接口电路、逻辑电路、操作键盘、输出电路、显示电路; (3)建立数学模型,确定控制算法; (4)设计功率驱动电路; (5)制作电路板,搭建系统,调试。 2.2.2 扩展设计要求 (1)在已能正常运行的微计算机控制系统的基础上,通过串口与PC连接; (2)编写人机界面控制和显示程序;编写微机通信程序;实现人机实时交互。

3方案比较 方案一:采用继电器对电动机的开或关进行控制。这个方案的优点是电路较为简单,缺点是继电器的响应时间慢、机械结构易损坏、寿命较短、可靠性不高。 方案二:采用电阻网络或数字电位器调整电动机的分压,从而达到调速的目的。但是电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。更主要的问题在于一般电动机的电阻很小,但电流很大;分压不仅会降低效率,而且实现很困难。 方案三:采用由电力电子器件组成的H 型PWM 电路。用单片机控制电力电子器件使之工作在占空比可调的开关状态,精确调整电动机转速。这种电路由于工作在电力电子器件的饱和截止模式下,效率非常高;H 型电路保证了可以简单地实现转速和方向的控制;电子开关的速度很快,稳定性也极佳,是一种广泛采用的PWM 调速技术。 兼于方案三调速特性优良、调整平滑、调整围广、过载能力大,因此本设计采用方案三。 4单闭环直流电机调速系统设计 4.1单闭环调速原理 4.1.1 闭环系统框图 4.1.2 调速原理 直流电机转速有: 常数Ke Ka 不变,Ra 比较小。 所以调节Ua 就能调节n 。 n n I K R K U K R I U n d d a e e d ?-=Φ -Φ=-=0φa a a U I U ≈-

软件综合课程设计任务书

软件综合课程设计任务书

————————————————————————————————作者: ————————————————————————————————日期: ?

软件综合课程设计任务书 一、课程设计的目的、要求 目的:软件综合课程设计是一个综合性的设计型实验教学环节,旨在使学生通过软件开发的实践训练,进一步掌握设计开发软件的方法与技术,学会数据的组织方法,提高软件开发的实际能力,培养创造性的工程设计能力和分析、解决问题的能力。 实现以下目标: 1.深化已学的理论知识,完成理论到实践的转化 通过软件开发的实践,进一步加深对软件工程方法和技术的了解,将所学的理论知识运用于开发实践中,并在实践中逐步掌握软件工具的使用。 2. 提高分析和解决实际问题的能力 课程设计不仅是一次软件工程实践的模拟训练,同时通过软件开发的实践,积累经验,提高分析问题和解决问题的能力; 3. 培养“开拓创新”能力 大力提倡和鼓励在开发过程中使用新方法、新技术,激励学生实践的积极性和创造性,开拓思路,设计新算法、新创意,培养创造性的工程设计能力; 要求:学生组成开发小组(2~4人),以小组为单位选择并完成一个规模适度的软件项目,在教师的指导下以软件设计为中心,独立完成从需求分析到软件测试的开发过程。 二、设计步骤安排 1.确定课题 由教师命题并给出各课题的具体需求,学生根据课题涉及的知识领域及自己对该领域的熟悉程度和对该课题的兴趣,选择课题,经教师调整审定后确定; 2. 需求分析 建立系统的分析模型,这是系统开发的重要阶段。主要工作是: 分析确定系统应具备的功能、性能,并从经济上、技术上进行可行性分析,建立“需求分析模型”确定开发计划。 3. 软件设计 具体工作是:对系统的分析模型进行修改、细化,进行系统的结构设计,用户界面设计,数据管理部件设计(若系统涉及到数据库,要对数据库结构进行设计) 4. 编码与测试 根据项目的应用领域及语言的特点,选择编程语言进行编码,要求给出程序的详细注释(包括模块名、模块功能、中间过程的功能及变量说明); 由开发小组进行除验收测试以外的测试工作(包括单元测试、组装测试与系统(确认)测试)。所有测试过程都要求采用综合测试策略,先进行静态分析,再进行动态测试。要求制定测试计划、记录测试过程与结果、保留测试用例、写出测试报告。 5. 验收测试 由教师组织验收测试的实施,内容包括:系统能否正确运行,实际系统与设计方案是否一致,是否实现了需求所确定的功能与性能,系统设计有无特色,算法有无创新,系统结构是否合理、新颖,系统界面是否友好、美观,操作是否简单,使用是否方便。6.总结和整理课程设计报告

计算机基础课程设计-word长文档排版

计算机基础课程设计Word长文档排版 姓名:苏丽萍 班级: 学号: 2013年12月

目录 一、函数与极限 1.1集合的概念 1.1.1集合的表示方法 1.1.2集合间的基本关系 1.1.3集合的基本运算 1.1.4集合中元素的个数 1.2常量与变量 1.2.1变量的定义 1.2.2变量的表示 1.2.3邻域 1.3函数 1.3.1函数的定义 1.3.2函数相等 1.3.3域函数的表示方法 1.4函数的简单性态 1.4.1函数的有界性 1.4.2函数的单调性 1.4.3函数的奇偶性 1.4.4函数奇偶性

Word 长文档排版 一、函数与极限 1.1集合的概念 一般地我们把研究对象统称为元素,把一些元素组成的总体叫集合(简称集)。集合具有确定性(给定集合的元素必须是确定的)和互异性(给定集合中的元素是互不相同的)。比如“身材较高的人”不能构成集合,因为它的元素不是确定的。 我们通常用大字拉丁字母A 、B 、C 、……表示集合,用小写拉丁字母a 、b 、c ……表示集合中的元素。如果a 是集合A 中的元素,就说a 属于A ,记作:a ∈A ,否则就说a 不属于A ,记作:a A 。 ⑴、全体非负整数组成的集合叫做非负整数集(或自然数集)。记作N ⑵、所有正整数组成的集合叫做正整数集。记作N +或N +。 ⑶、全体整数组成的集合叫做整数集。记作Z 。 ⑷、全体有理数组成的集合叫做有理数集。记作Q 。 ⑸、全体实数组成的集合叫做实数集。记作R 。 1.1.1集合的表示方法 ⑴、列举法:把集合的元素一一列举出来,并用“{}”括起来表示集合 ⑵、描述法:用集合所有元素的共同特征来表示集合。 1.1.2集合间的基本关系 ⑴、子集:一般地,对于两个集合A 、B ,如果集合A 中的任意一个元素都是集合B 的元素,我们就说A 、B 有包含关系,称集合A 为集合B 的子集,记作A B (或B A )。。 ⑵相等:如何集合A 是集合B 的子集,且集合B 是集合A 的子集,此时集合A 中的元素与集合B 中的元素完全一样,因此集合A 与集合B 相等,记作A =B 。 ⑶、真子集:如何集合A 是集合B 的子集,但存在一个元素属于B 但不属于A ,我们称集合A 是集合B 的真子集。 ⑷、空集:我们把不含任何元素的集合叫做空集。记作 ,并规定,空集是任何集合的子集。 ⑸、由上述集合之间的基本关系,可以得到下面的结论: ①、任何一个集合是它本身的子集。即A A ②、对于集合A 、B 、C ,如果A 是B 的子集,B 是C 的子集,则A 是C 的子集。 ③、我们可以把相等的集合叫做“等集”,这样的话子集包括“真子集”和“等集”。 1.1.3集合的基本运算 ⑴、并集:一般地,由所有属于集合A 或属于集合B 的元素组成的集合称为A 与B 的并集。记作A ∪B 。(在求并集时,它们的公共元素在并集中只能出现一次。) 即A ∪B ={x|x ∈A ,或x ∈B }。 ⑵、交集:一般地,由所有属于集合A 且属于集合B 的元素组成的集合称为A 与B 的交集。记作A ∩B 。 ?????

图像处理课程设计报告

图像处理课程设计报告 导语:设计是把一种设想通过合理的规划周密的计划通过各种感觉形式传达出来的过程。以下是XX整理图像处理课程设计报告的资料,欢迎阅读参考。 图像处理课程设计报告1 摘要:图像处理技术从其功能上可以分为两大类:模拟图像处理技术、和数字图像处理技术。数字图像处理技术指的是将图像信号直接转换成为数字信号,并利用计算机进行处理的过程,其主要的特点在于处理的精度高、处理的内容丰富、可以进行复杂、难度较高的处理内容。当其不在于处理的速度比较缓慢。当前图像处理技术主要的是体现在数字处理技术上,本文说阐述的图像处理技术也是以数字图像处理技术为主要介绍对象。数字图像处理又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。近年来, 图像处理技术得到了快速发展, 呈现出较为明显的发展趋势, 了解和掌握这些发展趋势对于做好目前的图像处理工作具有前瞻性的指导意义。本文总结了现代图像处理技术的三点发展趋势。 对图像进行处理(或加工、分析)的主要目的有三个方面: (1)提高图像的视感质量,如进行图像的亮度、彩色变换,增强、抑制某些成分,对图像进行几何变换等,以改善图像的质量。(2)提取图像中所包含的某些特征或特殊信息,这些被提

取的特征或信息往往为计算机分析图像提供便利。提取特征或信息的过程是计算机或计算机视觉的预处理。提取的特征可以包括很多方面,如频域特征、灰度或颜色特征、边界特征、区域特征、纹理特征、形状特征、拓扑特征和关系结构等。 (3)图像数据的变换、编码和压缩,以便于图像的存储和传输。不管是 何种目的的图像处理,都需要由计算机和图像专用设备组成的图像处理系统对图像数据进行输入、加工和输出。 数字图像处理主要研究的内容有以下几个方面: 图像变换由于图像阵列很大,直接在空间域中进行处理,涉及计算量很大。因此,往往采用各种图像变换的方法,如傅里叶变换、沃尔什变换、离散余弦变换等间接处理技术,将空间域的处理转换为变换域处理,不仅可减少计算量,而且可获得更有效的处理。目前新兴研究的小波变换在时域和频域中都具有良好的局部化特性,它在图像处理中也有着广泛而有效的应用。 图像编码压缩图像编码压缩技术可减少描述图像的数据量,以便节省图像传输、处理时间和减少所占用的存储器容量。压缩可以在不失真的前提下获得,也可以在允许的失真条件下进行。编码是压缩技术中最重要的方法,它在图像处理技术中是发展最早且比较成熟的技术。

计算机算法设计与分析

算法设计与分析 实 验 报 告 班级: 姓名: 学号: (备注:共给出5个参考实验案例,根据学号尾数做对应的实验,即如尾号为1,则模仿案例实验123;尾号2,则模仿案例实验234;尾号3,即345;尾号4,同1.)

目录 实验一分治与递归 (1) 1、基本递归算法 (1) 2、棋盘覆盖问题 (2) 3、二分搜索 (3) 4、实验小结 (5) 实验二动态规划算法 (5) 1、最长公共子序列问题 (5) 2、最大子段和问题 (7) 3、实验小结 (8) 实验三贪心算法 (8) 1、多机调度问题 (8) 2、用贪心算法求解最小生成树 (10) 3、实验小结 (12) 实验四回溯算法和分支限界法 (12) 1、符号三角形问题 (12) 2、0—1背包问题 (14) 3、实验小结 (18) 实验五多种排序算法效率比较 1、算法:起泡排序、选择排序、插入排序、shell排序,归并排序、快速排序等 (19) 2、实验小结 (18)

P art1:课程设计过程 设计选题--→题目分析---→系统设计--→系统实现--→结果分析---→撰写报告 P art2:课程设计撰写的主要规范 1.题目分析:主要阐述学生对题目的分析结果,包括题目描述、 分析得出的有关模型、相关定义及假设; 2.总体设计:系统的基本组成部分,各部分所完成的功能及相互 关系; 3.数据结构设计:主要功能模块所需的数据结构,集中在逻辑设 计上; 4.算法设计:在数据结构基础上,完成算法设计; 5.物理实现:主要有数据结构的物理存储,算法的物理实现,系 统相关的实现。具体在重要结果的截图,测试案例的结果数据,核心算法的实现结果等; 6.结果分析:对第五步的分析,包括定性分析和定量分析,正确 性分析,功能结构分析,复杂性分析等; 7.结论:学生需对自己的课程设计进行总结,给出评价,并写出 设计体会; 8.附录:带有注释的源代码,系统使用说明等; 9.参考文献:列出在撰写过程中所需要用到的参考文献。

计算机网络课程设计题目和要求

计算机网络课程设计通过课程设计,使学生在对计算机网络技术与发展整体了解的基础上,掌握网络的主要种类和常用协议的概念及原理,初步掌握以TCP/IP协议族为主的网络协议结构,培养学生在TCP/IP协议和LAN、WAN上的实际工作能力;学会网络构建、网络日常维护以及网络管理的方法,使学生掌握在信息化社会建设过程中所必须具备的计算机网络组网和建设所需的基本知识与操作技能。运用网络工程和软件工程思想,按照需求分析、规划、设计、配置的基本流程,经历一个完整的网络工程过程,培养学生调查研究、查阅技术文献、资料、手册以及编写技术文档的能力,培养学生将理论知识应用于实践的能力。 一、格式要求及须知: (1)使用学院网站的课程设计模版,要求格式美观,字体及编号要求见表1。 表1 字体及编号要求

(2)参考文献:参考课本的参考文献格式(附录C)。但编号换成[1]、[2]……(3)附录:课程设计中的代码或得到的数据包等数据将作为该设计附件或附录,题目需要但没有的相应代码及数据包文件的将记整组不及格,需要重做。 (4)成绩记录:该设计成绩将记录到教务处成绩管理系统中。 (5)打印:经审查(发邮件到指导老师处或当面交流修改)后,方可打印、存档。打印后递送到指导老师的信箱。 (6)如发现两组设计雷同或抄袭互联网,该组重做! 二、任务完成形式: 交付课程设计说明书、设计作品(需要验收)。 设计作品指的是完整的源程序代码(对于第二类题目为仿真文件)。 课程设计说明书(纸质+电子版),内容包括:设计任务、需求分析、总体设计、详细设计(相应地给出关键的代码)、设计总结(评价/遇到的问题/体会/建议等)、使用说明等。 设计工作计划与进度安排: 根据所选题目,合理安排进度计划,总体上需要40个小时。以下仅供参考: 1. 原理知识 4小时 2. 程序设计技术 4小时 3. 开发环境与程序调试环境 4小时 4. 总体设计、关键环节的详细设计 8小时

人脸识别课程设计论文(完美版)

前言 在人类社会的发展进入到21世纪的今天,安全问题已经成为困扰人们日常生活的重要问题之一。社会的发展促进了人的流动性,进而也增加了社会的不稳定性,使得安全方面的需求成为21世纪引起广泛关注的问题。不论是享受各项服务如网上冲浪、还是居家、办公等都涉及到安全,以往这些行为基本上是通过符号密码来进行安全保护,但是随着服务数量的不断增加,密码越来越多以致无法全部记住,而且密码有时也会被他人所窃取,各种密码被破解的概率越来越高,因为通常由于记忆的原因,人们经常会选用自己或亲人的生日、家庭地址、电话号码等作为密码并长期使用,这些很容易被一些不法分子获取。可见在现代社会中,身份识别已经成为人们日常生活中经常遇到的一个基本问题。人们乎时时刻刻都需要鉴别别人的身份和证明自己的身份,以获得对特定资源的使用权或者制权,同时防止这些权限被他人随意的取得。传统的身份识别方法主要基于身份标识物(如证件、卡片)和身份标识知识(如用户名、密码)来识别身份,这在很长一段时期是非常可靠和方便的识别方法,得到了广泛的应用。但是,随着网络、通信、交通等技的飞速发展,人们活动的现实空间和虚拟空间不断扩大,需要身份认证的场合也变得无不在。人们需要携带的身份标识物品越来越多,身份标识知识也变得越来越复杂和冗长在这种情况下,传统身份识别方式的弊端日益彰显。身份标识物品容易被丢失和伪造,份标识知识容易被遗忘、窃取和破解,而身份标识的重要性又使得一旦失去了身份标识会给标识的所有者甚至整个社会带来重大的甚至难以弥补的损失。在美国,每年约有上百万的福利款被人以假冒的身份领取;每年发生的信用卡、ATM、移动电话和冒领支票等成的损失达数百亿美元[2]。面临着这样的状况,人们对身份识别的安全性、可靠性、准确和实用性提出了更高的要求,必须寻求身份识别的新途径。 于是,近年来人类生物特征越来越广泛地用于身份识别,而且生物特征可以更好的进行安全控制,世界各国政府都在大力推进生物识别技术的发展及应用。与原有的人类身分识别技术(如:个人密码、磁卡、智能卡等)相比,基于人类生物特征的识别技术具有安全可靠、特征唯一、不易伪造、不可窃取等优点。人类本身具有很多相对独特的特征,如DNA、指纹、虹膜、语音、人脸等。基于这些相对独特的人类特征,结合计算机技术,发展起众多的基于人类生物特征的人类身份识别技术,如DNA识别技术、指纹识别技术、虹膜识别技术、语音识别技术、人脸识别技术。 人脸识别和其他的生物识别比起来有以下几个优点:1、其他的生物特征识别方法都需要一些人为的行为配合,而人脸识别不需要。2、人脸识别可应用在远距离监控中。3、针一对现在的第一、二代身份证,每个身份证都有人脸的正面照片,也就是人脸库将是最完善的,包括人最多的,我们可以利用这个库来更直观、更方便的核查该人的身份。 4、相对于其他基于生物特征识别技术,人脸识别技术具有特征录入方一便,信息丰富,使用面广等优点,同时人脸识别系统更加直接友好。人脸识别技术作为生物识别技术的

计算机算法设计与分析课程设计.

成绩评定表 学生姓名吴旭东班级学号1309010236 专业信息与计算 科学课程设计题目 分治法解决棋盘覆 盖问题;回溯法解 决数字拆分问题 评 语 组长签字: 成绩 日期20 年月日

课程设计任务书 学院理学院专业信息与计算科学 学生姓名吴旭东班级学号1309010236 课程设计题目分治法解决棋盘覆盖问题;回溯法解决数字拆分问题实践教学要求与任务: 要求: 1.巩固和加深对基本算法的理解和运用,提高综合运用课程知识进行算法设计与分析的能力。 2.培养学生自学参考书籍,查阅手册、和文献资料的能力。 3.通过实际课程设计,掌握利用分治法或动态规划算法,回溯法或分支限界法等方法的算法的基本思想,并能运用这些方法设计算法并编写程序解决实际问题。 4.了解与课程有关的知识,能正确解释和分析实验结果。 任务: 按照算法设计方法和原理,设计算法,编写程序并分析结果,完成如下内容: 1.运用分治算法求解排序问题。 2. 运用回溯算法求解N后问题。 工作计划与进度安排: 第12周:查阅资料。掌握算法设计思想,进行算法设计。 第13周:算法实现,调试程序并进行结果分析。 撰写课程设计报告,验收与答辩。 指导教师: 201 年月日专业负责人: 201 年月日 学院教学副院长: 201 年月日

算法分析是对一个算法需要多少计算时间和存储空间作定量的分析。算法 (Algorithm)是解题的步骤,可以把算法定义成解一确定类问题的任意一种特殊的方法。在计算机科学中,算法要用计算机算法语言描述,算法代表用计算机解一类问题的精确、有效的方法。 分治法字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。在一个2^k*2^k的棋盘上, 恰有一个放歌与其他方格不同,且称该棋盘为特殊棋盘。 回溯法的基本做法是深度优先搜索,是一种组织得井井有条的、能避免不必要重复搜索的穷举式搜索算法。数字拆分问题是指将一个整数划分为多个整数之和的问题。利用回溯法可以很好地解决数字拆分问题。将数字拆分然后回溯,从未解决问题。 关键词:分治法,回溯法,棋盘覆盖,数字拆分

计算机科学与技术专业课程设计

专业教育 ─我所认识的计算机专业 1.对专业的最初认识 1.1为什么选择计算机专业 计算机使当代社会的经济、政治、军事、科研、教育、服务等方面在概念和技术上发生了革命性的变化,对人类社会的进步已经并还将产生极为深刻的影响。目前,计算机是世界各发达国家激烈竞争的科学技术领域之一。 随着信息时代的到来,计算机逐渐成为技术及科学领域的核心。随着计算机的普及,其应用领域逐渐广泛,深刻影响着我们的学习,工作及生活。因而,计算机的学习与我们的生活息息相关。 1.2最初的认识 虽然对于这个专业刚开始的时候不了解它具体是干什么的,但是从小就对于计算机十分感兴趣,因此在高考完填报志愿时就报了这个专业。进入大学之后,看到培养计划发现这个专业应用还是挺多的,但是因此让自己更加的对以后的职业感到很迷茫,不知道究竟是该干什么了。但是既来之,则安之。相信在以后的学习过程中会慢慢地找到方向,并为之努力的。因此说对于计算机专业还是抱有很大的热情的。 2.学习的方法 2.1培养对专业的兴趣 俗话说兴趣是最好的老师,因此要想真正做好一件事情,学好自己的专业首先就要培养自己对本专业的兴趣。那么应该如何培养呢?可能阅读专业书籍对于刚刚步入大学的自己来说有点困难,也很枯燥,那么不妨先从科普书籍看起。科普书籍是了解理论、获得应用知识最好的途径。相信不少理工科的同学被量子物理和相对论搞得头昏脑胀过。究其原因,是我们的现实生活与抽象的数学模型之间存在思想意识上的鸿沟。然而要是读读斯蒂芬·霍金的《时间简史》,你就会被书中有趣的故事和例证所吸引,从而对抽象的理论有了感性的认识——即使仍然没有读懂,你也至少了解了这个学科研究的领域和目标是什么,也必然有所收获。 2.2认真学习专业课程,学好数学 大学计算机专业对数学的要求较高,其重要性不必多言。数学令不少同学头痛,除了其“繁”与“难”外,很大程度上是因为他们没有理解这些抽象理论的实际应用方向。与本科数学专业的课程设置相比,计算机专业的数

计算机基础课程设计报告范文

设计报告范文 一、任务内容 通过对《大学计算机基础》和《大学计算机基础学习与实验指导》这两本教材的学习后,我们应综合应用计算机进行一系列操作与使用,全面掌握并用所学的知识进行综合实践。本论文的任务主要为学习运用网页制作软件FrontPage2003制作自己的网页,了解制作过程,再者学习网站的发布和网页的发布和学习运用演示软件PowerPoint2003制作幻灯片并设计和编辑文稿进行综合演示浏览,按要求结合相应的图文素材。这里将会报告指出制作的步骤与方法,以及根据自己的主题进行网页和幻灯片的页面修饰的方法,如插入图片,用Flash制作的动画(这里将会报告制作的方法)等等。 二、设计步骤 a)利用网页制作软件FrontPage2003制作一个关于“成都著名小吃”的网页, 并用文本的编辑与格式化以及对象、表格、框架的插入与设置等操作进行网页的编辑。设置该网站的内容主题和格式,并发布该网站。 首先设计主页,内容为“成都著名小吃”,主要介绍成都著名小吃的历史和独特的风味,并用表格的方式输入各个将要介绍的小吃名“麻辣烫”、“麻婆豆腐”、“棒棒鸡”、“担担面”、“夫妻肺片”、“毛血旺”、“传统锅魁”,像菜单形式呈现出来。 接下来设计各个分页面,都用主标题“美味吧”大字体标记,下面再用各个美食的名字作为副标题,接下来就用文字阐释其特征或做法或风味或历史或吃法、、、再加上五彩的图片将该小吃描述的淋漓尽致,形象而鲜活。 最后在最后一行输入“返回主页”的字样,以便于每当看完一项小吃的网页后,可以及时返回主页看另一项小吃的网页,既方便又美观,用超链接的方式把各分页面联系在一起,自动进入对应的网页并完成网页之间的转换。 制作好网页之后,需创建一个网站,主题已确定“成都著名小吃”,则要设计结构,设置各分网页与主页之间为树形链接,主要链接都在主页上,再分别展开,以高效完成操作。可以使用网站模板修饰网站。 接下来就是将网站上传到到网上,以便让更多人能浏览到该页面,可以

计算机图形学课程设计书

计算机图形学课程设计 书 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]

课程设计(论文)任务书 理学院信息与计算科学专业2015-1班 一、课程设计(论文)题目:图像融合的程序设计 二、课程设计(论文)工作: 自2018 年1 月10 日起至2018 年1 月12日止 三、课程设计(论文) 地点: 2-201 四、课程设计(论文)内容要求: 1.本课程设计的目的 (1)熟悉Delphi7的使用,理论与实际应用相结合,养成良好的程序设计技能;(2)了解并掌握图像融合的各种实现方法,具备初步的独立分析和设计能力;(3)初步掌握开发过程中的问题分析,程序设计,代码编写、测试等基本方法;(4)提高综合运用所学的理论知识和方法独立分析和解决问题的能力; (5)在实践中认识、学习计算机图形学相关知识。 2.课程设计的任务及要求 1)基本要求: (1)研究课程设计任务,并进行程序需求分析; (2)对程序进行总体设计,分解系统功能模块,进行任务分配,以实现分工合作;(3)实现各功能模块代码; (4)程序组装,测试、完善系统。 2)创新要求: 在基本要求达到后,可进行创新设计,如改进界面、增加功能或进行代码优化。

3)课程设计论文编写要求 (1)要按照书稿的规格打印誊写课程设计论文 (2)论文包括封面、设计任务书(含评语)、摘要、目录、设计内容、设计小结(3)论文装订按学校的统一要求完成 4)参考文献: (1)David ,《计算机图形学的算法基础》,机械工业出版社 (2)Steve Cunningham,《计算机图形学》,机械工业出版社 (3) 5)课程设计进度安排 内容天数地点 程序总体设计 1 实验室 软件设计及调试 1 实验室 答辩及撰写报告 1 实验室、图书馆 学生签名: 2018年1月12日 摘要 图像融合是图像处理中重要部分,能够协同利用同一场景的多种传感器图像信息,输出一幅更适合于人类视觉感知或计算机进一步处理与分析的融合图像。它可明显的改善单一传感器的不足,提高结果图像的清晰度及信息包含量,有利于更为准确、更为可靠、更为全面地获取目标或场景的信息。图像融合主要应用于军事国防上、遥感方面、医学图像处理、机器人、安全和监控、生物监测等领域。用于较多也较成熟的是红外和可见光的融合,在一副图像上显示多种信息,突出目标。一般情况下,图像融合由

计算机算法设计与分析期末考试复习题

1、二分搜索算法是利用( A )实现的算法。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法 2、下列不是动态规划算法基本步骤的是( A )。 A、找出最优解的性质 B、构造最优解 C、算出最优解 D、定义最优解 3、最大效益优先是( A )的一搜索方式。 A、分支界限法 B、动态规划法 C、贪心法 D、回溯法 4、最长公共子序列算法利用的算法是( B )。 A、分支界限法 B、动态规划法 C、贪心法 D、回溯法 5. 回溯法解TSP问题时的解空间树是( A )。 A、子集树 B、排列树 C、深度优先生成树 D、广度优先生成树6.下列算法中通常以自底向上的方式求解最优解的是( B )。 A、备忘录法 B、动态规划法 C、贪心法 D、回溯法 7、衡量一个算法好坏的标准是(C )。 A 运行速度快 B 占用空间少 C 时间复杂度低 D 代码短 8、以下不可以使用分治法求解的是(D )。 A 棋盘覆盖问题 B 选择问题 C 归并排序 D 0/1背包问题 9. 实现循环赛日程表利用的算法是( A )。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法 10、实现最长公共子序列利用的算法是( B )。 A、分治策略 B、动态规划法 C、贪心法 D、回溯法11.下面不是分支界限法搜索方式的是( D )。 A、广度优先 B、最小耗费优先 C、最大效益优先 D、深度优先 12.下列算法中通常以深度优先方式系统搜索问题解的是( D )。 A、备忘录法 B、动态规划法 C、贪心法 D、回溯法 13. 一个问题可用动态规划算法或贪心算法求解的关键特征是问题的( B )。 A、重叠子问题 B、最优子结构性质 C、贪心选择性质 D、定义最优解14.广度优先是( A )的一搜索方式。 A、分支界限法 B、动态规划法 C、贪心法 D、回溯法 15.背包问题的贪心算法所需的计算时间为( B )。

计算机科学与技术专业课程设计

计算机学院计算机科学与技术专业《程序设计综合课程设计》报告(2007/2008学年第一学期) 学生姓名: 学生班级:信管 学生学号: 指导教师: 2009年12月6日

目录 第一章课程设计的目的和要求 (3) 第二章 (4) 第三章模版设计说明 (5) 3.1 系统总框架 (5) 第四章软件使用说明及运行结果 (7) 4.1使用说明 (7) 4.2 运行结果 (8) 第五章课程设计心得与体会 (10) 附录2:程序清单 (13)

第一章课程设计的目的和要求 1.1课程设计教学环节的主要目的 C语言课程设计的主要目的是培养学生综合运用C语言程序设计课程所学到的知识,编写C程序解决实际问题的能力,以及严谨的工作态度和良好的程序设计习惯。 通过课程设计的训练,学生应该能够了解程序设计的基本开发过程,掌握编写、调试和测试C语言程序的基本技巧,充分理解结构化程序设计的基本方法。 C语言程序设计的主要任务是要求学生遵循软件开发过程的基本规范,运用结构化程序设计的方法,按照课程设计的题目要求,分析、设计、编写、调试和测试C语言程序及编写设计报告。 1.2课程设计实验报告主要要求 运用所学的知识,熟练掌握结构体函数的定义与运用、指针函数等函数的熟练掌握,将书本知识运用到程序设计中,做到活学活用。

第二章课程设计任务内容 此次程序设计内容是编写电子英汉词典 2.1、问题描述: 英汉词典作为一个常用的学习工具,是我们经常要使用的。该系统能完成一个简单的电子英汉词典的功能,如:单词的查找、增词、删除、修改和维护等工作。 2.2、功能描述: 1、在计算机中建立有限规模的电子英汉词典(文件),利用程序实现电子英汉词典的查找、增词、删除、修改和维护工作。 2、要求整个设计以人为本,用户界面友好。 2.3、算法提示: 1、数据结构:结构体数组 2、简单的程序设计 3、友好的窗口菜单的设计

计算机网络基础课程设计-参考模板

课程设计说明书题目名称:计算机网络技术课程设计 系部: 专业班级: 学生姓名: 学号: 指导教师: 完成日期:

新疆工程学院 课程设计评定意见 设计题目计算机网络技术课程设计 系部计算机工程系专业班级 学生姓名学生学号 评定意见: 评定成绩: 指导教师(签名):年月日

新疆工程学院 计算机工程_系(部)课程设计任务书 2015/2016学年2 学期2016年6月1 日 教研室主任(签名)系(部)主任(签名)

摘要 帧中继技术是在开放系统互连(OSI)网络模型的第二层(链路层)上以帧的形式用简化的方法传送和交换数据单元的一种数字交换技术。帧中继技术是在分组技术充分发展,数字与光纤传输线路逐渐替代已有的模拟线路,用户终端日益智能化的条件下诞生并发展起来的。帧中继仅完成OSI物理层和链路层核心层的功能,将流量控制、纠错等留给智能终端去完成,大大简化了节点机之间协议;同时,帧中继采用虚电路技术,能充分利用网络资源,因而帧中继具有吞吐量高、时延低、适合突发性业务等特点。 关键词:帧中继网络模型协议虚电路技术

目录 1.绪论 (1) 1.1介绍 (1) 2.设计过程 (2) 2.1端口选择 (2) 2.2 Cloud-PT-Empty配置 (3) 2.3 路由器配置 (5) 3.测试 (8) 3.1 PC机测试 (8) 4.VLAN划分 (9) 4.1基于交换机端口号划分VLAN (10) 4.2基于MAC地址划分VLAN (10) 4.3基于IP地址划分VLAN (10) 5.单臂路由 (10) 5.1单臂路由定义 (10) 5.2实验目的 (10) 5.3实验过程 (11) 6. 服务器 (12) 6.1 DHCP (12) 6.2 DNS (12) 6.3 HTTP (12) 6.4服务器实验 (12) 总结 (13) 参考文献 (14) 1.

相关主题
文本预览
相关文档 最新文档