数据结构课程设计心得全国交通咨询系统【模版】

数据结构课程设计心得全国交通咨询系统【模版】
数据结构课程设计心得全国交通咨询系统【模版】

太原工业学院

计算机工程系

数据结构课程设计

设计题目:全国交通网络咨询系统

1

班级:计算机科学与技术

学号:132054103

姓名:陈敏

指导教师:刘海静

年月日

目录

一、课程设计题目 (1)

二、需求分析 (1)

三、测试数据 (2)

四、概要设计 (2)

五、调用关系图 (3)

六、程序代码 (3)

七、测试结果 (14)

八、心得体会及总结 (14)

数据结构课程设计

一、课程设计题目

全国交通网络咨询系统

二、需求分析

1、实现功能

对城市信息(城市名、城市间的里程)进行编辑:具备添加、修改、删除功能;

对城市间的交通工具:火车。对列车时刻表进行编辑:里程、和列车班次的添加、修改、删除;

提供两种最优决策:最快到达或最省钱到达。全程只考虑一种交通工具,可以不考虑回程;

咨询以用户和计算机对话方式进行,要注意人机交互的屏幕界面。由用户选择最优决策原则和交通工具,输入起始站、终点站、出发时间,输出信息:最快需要多长时间才能到达及旅费,或者最少需要多少旅费才能到达及时间,并详细说明依次于何时何地乘坐哪一趟列车何时到达何地。

2、设计思路

(1) 数据存储。城市信息(城市名、代码)、交通信息(城市间的里程、各航班和列车时刻)存储于磁盘文件。在实验中本想用文本储存数据,但操作不熟悉,而是改用图的邻接矩阵储存原始信息,而后用数组进行添加删改

(2) 数据的逻辑结构。根据设计任务的描述,其城市之间的旅游交通问题是典型的图结构,可看作为无向图,图的顶点是城市,边是城市之间所耗费的时间(要包括中转站的时间)或旅费。

(3) 数据的存储结构。采用邻接表和邻接矩阵都可作为数据的存储结构,这里建议采用邻接矩阵作为数据的存储结构。

(4) 用不同的功能模块对城市信息和交通信息进行编辑。添加、修改、删除功能可用菜单方式或命令提示方式。只要能方便的对城市信息和交通信息进行管理即可,但要注意人机界面,具体实现由学生自行设计,也可参考有关程序(届时在网上提供)。这些工作有不小的工作量。

(5) 最优决策功能模块

① 读入城市信息和交通信息,用邻接表生成含权网络,表头数组中的元素存放城市名及对方城市到达该元素所代表城市的所有信息;表头数组中的元素所对应的单链表存放与该元素所代表的城市有交通联系的城市(代码、里程、列车车次)。

② 根据具体最优决策的要求,用floyd算法求出出发城市到其它各城市的最优值(最短时间

或最小的费用),搜索过程中所经过城市的局部最优信息都保存在邻接表的表头数组中。其目的城市所代表的元素中就保存了所需的最优决策结果。其相应的初始值可为∞,并在表头数组对应的城市元素中保存响应的信息。

③ 主程序可以有系统界面、菜单;也可用命令提示方式;选择功能模块执行,要求在程序运行过程中可以反复操作。

三、测试数据:

四、概要设计

本程序运用了关于图这种数据结构。

它的抽象数据类型定义如下:

typedef struct unDiGraph

{

int numVerts; //结点

costAdj cost; //邻接矩阵

}unDiGraph,*UNG;

基本操作:

unDiGraph* CreateCostG()

操作结果:构造带权(费用)图。

unDiGraph* CreateTimeG()

操作结果:构造带权(时间)图。

构造飞机带权(费用)图。

PathMat *Floyed(unDiGraph *D)

操作结果:Floyed函数求任意两点的最短路径。

五、调用关系图

六、程序代码

#include

#include

#include

#include

#include

#include

#define INF 10000 //定义一个最大数定为无穷值

#define MAX 7

static int cnumber=7;

static int k=0;

static int v=0,z=0;//定义静态变量

typedef struct zhu//定义结构体zhu

{

int ccost;//定义结构变量

int ctime;

}zhu;

zhu m[20],x[20],n[20];//定义数组为struct zhu 类型数组,且三个数组分别储存添加后的数据,且表示花费m,起点n,和终点x

typedef int costAdj[MAX+1][MAX+1];//定义图的邻接矩阵,并从1开始

int Path[MAX+1][MAX+1];//路程矩阵,表示经过存放的点k

typedef struct unDiGraph

{

int numV;//结点

costAdj cost;//邻接矩阵

}unDiGraph,*UNG;

typedef struct cedit

{

char a[10];

}cedit;

cedit add[10];

costAdj B,L;

//功能一输出相应的城市信息

int pr(int i,int j)//pr函数表输出功能

{

int h=0;

if (j==0)

{

h=i;

}

else if (j==1)

{

cin>>add[i].a;

}

switch (h){

case(0) : cout<<"";

break;

case(1) : cout<<"成都 ";

break;

case(2) : cout<<"广州 ";

break;

case(3) : cout<<"上海 ";

break;

case(4) : cout<<"徐州 ";

break;

case(5) : cout<<"郑州 ";

break;

case(6) : cout<<"西安 ";

break;

case(7) : cout<<"北京 ";

break;

}

return 1;

}

void pri()//声明pri函数,即利用pr函数输出代码为i的城市信息{

int i;

cout<<"城市以及其代码"<

cout<<"**************************************"<

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

{

cout<

pr(i,0);

}

cout<<"****************************************"<

}

//构造CostG图,表示其费用

unDiGraph *CreateCostG(int o)//火车的花费的存贮和编辑功能

{

unDiGraph *G;

int i;

int j;//定义的 i,j做循环变量

int a=0,b=0,f=1,h=1;//f变量初始为1, h初始值为1,a=0,b=0临时表示开始城市代码以及目的城市代码

if(!(G=(unDiGraph *)malloc(sizeof(unDiGraph)))) //为G图分配存储空间。

{

return(NULL);

}

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

{

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

{

G->cost[i][j]=INF;//初始化矩阵cost每一项,使其无穷大}

}

G->numV=cnumber;

G->cost[1][6]=G->cost[6][1]=90;

G->cost[1][2]=G->cost[2][1]=84;

G->cost[2][3]=G->cost[3][2]=51;

G->cost[2][5]=G->cost[5][2]=67;

G->cost[3][4]=G->cost[4][3]=53;

G->cost[4][5]=G->cost[5][4]=40;

G->cost[4][7]=G->cost[7][4]=88;

G->cost[5][6]=G->cost[6][5]=90;

G->cost[5][7]=G->cost[7][5]=67;

G->cost[6][7]=G->cost[7][6]=60;

if (o)

{

while(h==1)//h初始值为1

{

v=v+1;//V为全局静态变量,初始值为0 ,v表示编辑的火车花费的组数,三个编辑数组中的存放代码

pri();

cout<<"火车花费编辑"<

cout<<"请输入开始城市的代码"<

cin>>a;

cout<<"请输入目的城市的代码"<

cin>>b;

cout<<"请输入你的两地花费"<

cin>>m[v].ccost;

n[v].ccost=a;

x[v].ccost=b;

cout<<"请选择"<

cout<<"*********************************************************" <

cout<<"1:继续更改城市费用"<

cout<<"0:返回上一级菜单"<

cout<<"*********************************************************" <

cin>>h;

switch(h) {

case 1:

h=1;

break;

case 0:

h=0;

break;

default:{

cout<<"选择出错"<

}

}

}

}

f=v+1;//初始定义变量f为1,全局变量v为0,即1=0+1

while (v++) //v++代表的意思

{

G->cost[n[v].ccost][x[v].ccost]=m[v].ccost;

}

v=f;

return(G);

}

//构造TimeG图,表示其花费时间

unDiGraph *CreateTimeG(int o)//火车的时间的存贮和编辑功能

{

unDiGraph *G;

int i,j;//循环变量

int a=0,b=0,f,h=1;//a,b 表增加城市的代码

if(!(G=(unDiGraph *)malloc(sizeof(unDiGraph)))) //为G分配存储空间。

{

return(NULL);

}

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

{

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

{

G->cost[i][j]=INF;//初始化使G->cost[i][j]为无穷。

}

}

G->numV=cnumber;

G->cost[1][6]=G->cost[6][1]=9;

G->cost[1][2]=G->cost[2][1]=8;

G->cost[2][3]=G->cost[3][2]=5;

G->cost[2][5]=G->cost[5][2]=3;

G->cost[3][4]=G->cost[4][3]=5;

G->cost[4][5]=G->cost[5][4]=4;

G->cost[4][7]=G->cost[7][5]=6;

G->cost[5][6]=G->cost[6][5]=9;

G->cost[5][7]=G->cost[7][5]=6;

G->cost[6][7]=G->cost[7][6]=6;

if (o)

{

while(h==1)

{

z=z+1;//全局静态变量,初始值为0.即1=0+1

pri();

cout<<"火车时间编辑"<

cout<<"请输入开始城市的代码"<

cin>>a;

cout<<"请输入结尾城市的代码"<

cin>>b;

cout<<"请输入你的两地时间"<

cin>>m[z].ctime;

n[z].ctime=a;

x[z].ctime=b;

cout<<"请选择"<

cout<<"*********************************************************"

<

cout<<"1:继续更改城市时间"<

cout<<"0:返回上一级菜单"<

cout<<"*********************************************************" <

cin>>h;

switch(h) {

case 1:

h=1;

break;

case 0:

h=0;

break;

default:{

cout<<"选择出错"<

}

}

}

}

f=z+1;//全局静态变量z,初始值为0

while (z++)

{

G->cost[n[z].ctime][x[z].ctime]=m[z].ctime;

}

z=f;

return(G);

}

//Floyed函数求任意两点的最短路径:

void Floyed(unDiGraph *D,unDiGraph *M)//图D M

{

int i,j,k,n;//i,j为循环变量,k表中间节点的变量

costAdj A,C;//A C为图,临时表示两种最佳路线组成的矩阵,定义costAdj B L

n=cnumber;

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

{

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

{

A[i][j]=D->cost[i][j];//初始化矩阵A,C。

C[i][j]=M->cost[i][j];

Path[i][j]=-1; //初始化权矩阵p

}

}

for(k=1;k<=n;k++) //k为逐步加入的中间结点

{

for(i=1;i<=n;i++) //i代表矩阵A中行号

{

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

{

if(A[i][k]+A[k][j]

{

A[i][j]=A[i][k]+A[k][j];

C[i][j]=C[i][k]+C[k][j];

Path[i][j]=k;//若i经过k到j比i到j小,则选择经过K 个中间点之后,i,j两点的最佳路径。

B[i][j]=A[i][j];//构造 A C 两个任意节点上的最优路径所建造的矩阵,并分别赋给B L代表时间与花费

L[i][j]=C[i][j];

}

else

{

B[i][j]=A[i][j];

L[i][j]=C[i][j];

}

}

}

}//end for循环

cout<<"\n最短路径为: "<

}///end-Floyed

//为了求从i到j的最短路径,只需要调用如下的过程:

void prn_pass(int i,int j)

{

if(Path[i][j]!=-1)

{

prn_pass(i,Path[i][j]);//输出最短路径经过的所有点个数k

pr(Path[i][j],0);

}

}

//求最少时间路径。

void time()

{

int Bcity,Ecity;//起始成市号码和终点城市号码

int l,h=1;//定义变量l h

do {

pri();//输出城市列表及相应代码。

cout<<"请输入起始城市和目的城市的代码,中间以空格隔开"<

cin>>Bcity;

cin>>Ecity;//输入起始城市和终点城市的代码。

if

(!((0

{

cout<<"\n出错啦!!! 输入城市号码请在1-7之间,且两城市代码不能相等!!"<

}

Floyed(CreateTimeG(0),CreateCostG(0));//调用Floyed函数。

pr(Bcity,0);// 显示起始城市。

prn_pass(Bcity,Ecity);//调用prn_pass函数,显示最短路径经过的城市。 pr(Ecity,0);//显示终点城市。

if (B[Bcity][Ecity]>8000||L[Bcity][Ecity]>8000)

{

cout<<"两地间还没有线路通过"<

}

else

{

cout<<"火车花的时间是"<

}

cout<<" 输入0.返回主菜单 "<

scanf("%d",&l); //

h=l;

} while(h==1);

}

//求最少花费路径。

void money()

{

int Bcity,Ecity;//起始成市号码和终点城市号码

char l,h=1;

do {

pri();//输出城市列表及相应代码。

cout<<"请输入起始城市和目的城市的代码,中间以空格隔开"<

cin>>Bcity;

cin>>Ecity;//输入起始城市和终点城市的代码。

if

(!((0

{

cout<<"\n出错啦!!! 输入城市号码请在1-7之间,且两城市代码不能相等!!"<

}

Floyed(CreateCostG(0),CreateTimeG(0));//调用Floyed函数。

pr(Bcity,0);//显示起始城市。

prn_pass(Bcity,Ecity);//调用prn_pass函数,显示最短路径经过的城市。

pr(Ecity,0);//显示终点城市。

if (L[Bcity][Ecity]>8000||B[Bcity][Ecity]>8000)

{

cout<<"两地间还没有线路通过"<

}

else

{

cout<<"火车花的钱是"<

cout<<" 输入0.返回主菜单"<

scanf("%d",&l); //

h=l;

} while(h==1);

}

void add_city()//对城市的增加

{

static int i=1;

int j;

cout<<"请输入你要增加的城市的个数"<

cin>>j;

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

{

cout<<"请输入你要增加的城市名"<

pr(i,1);//将添加的内容放置于add数组中,并以i为代码

cnumber=cnumber+1;

}

cout<<"城市增加完毕"<

}

void chose()//选择最少时间或最小花费

{

int h;

cout<<"1:最小花费"<

cout<<"2:最小时间"<

cout<<"请选择:"<

cin>>h;

if (h==1) {

money();

}

else

{

time();

}

}

void edit_line()//增加编辑火车的费用

{

CreateCostG(1);

}

void edit_hour()//增加编辑火车的时间

{

CreateTimeG(1);

}

void administrator()//管理员功能

{

int h=1;

while (h) {

cout<<"********************************************************** **"<

cout<<"1:增加城市"<

cout<<"2:添加或编辑火车费用"<

cout<<"3:添加或编辑火车时间"<

cout<<"0:返回主菜单"<

cout<<"********************************************************** **"<

cout<<"请选择"<

cin>>h;

switch(h) {

case 1 :add_city();

break;

case 2: edit_line();

break;

case 3:edit_hour();

break;

case 0:

h=0;

break;

default:

{

cout<<"选择出错!"<

}

}

}

}

//主函数

void main()

{

char n;

int x;

while(x!=0)

{

cout<

cout<<"输入你希望查询的种类代码,你将得到最佳方案!"<

cout<<" ******************全国交通网络模拟系统

******************"<

cout<<" * 主菜单*"<

cout<<" * 1.查看城市*"<

cout<<" * 2.选择最短时间路线*"<

cout<<" * 3.选择最节约费用路线*"<

cout<<" * 4.管理员程序*"<

cout<<" * 0.退出程序*"<

cout<<"

********************************************************"<

cout<

cout<<"请选择(0-4)..... ";//输入选择菜单。

cin>>n ;

switch(n)//当输入为0-4,则用switch语句进行选择。

{

case '1': pri();//查看城市

break;

case '2' : time(); //当输入为2,则调用time函数。

break;

case '3' : money();//当输入为3,则调用money函数。

break;

case '4':administrator();

break;

case '0'://当输入为0。则确认退出。

x=0;

break;

default :

{

cout<

}

}//end-Switch

}

}

七、测试结果:

开始界面

1、查看程序

2、最快到达咨询(举例)

当输入出错时,系统会提示出错信息,并返回输入窗口让用户重新输入。

八、心得体会及总结

通过这次课程设计,我在本次实验中,对于图和最短路径的内容作了进一步加深,但是也发现了自己在“栈”的内容上不熟练,所以讲原本的最优路径的临时存放由原先设想的栈改换成加变量k进行每个节点的循环来找最优路径。本次实验之后,应当利用更多的时间来实践课本内容,以求能熟练上手。

数据结构课程设计报告模板

《数据结构I》三级项目报告 大连东软信息学院 电子工程系 ××××年××月

三级项目报告注意事项 1. 按照项目要求书写项目报告,条理清晰,数据准确; 2. 项目报告严禁抄袭,如发现抄袭的情况,则抄袭者与被抄袭者均 以0分计; 3. 课程结束后报告上交教师,并进行考核与存档。 三级项目报告格式规范 1. 正文:宋体,小四号,首行缩进2字符,1.5倍行距,段前段后 各0行; 2. 图表:居中,图名用五号字,中文用宋体,英文用“Times New Roman”,位于图表下方,须全文统一。

目录 一项目设计方案 (3) 二项目设计分析 (4) 三项目设计成果 (4) 四项目创新创业 (5) 五项目展望 (6) 附录一:项目成员 (6) 附录二:相关代码、电路图等 (6)

一项目设计方案 1、项目名称: 垃圾回收 2、项目要求及系统基本功能: 1)利用数据结构的知识独立完成一个应用系统设计 2)程序正常运行,能够实现基本的数据增加、删除、修改、查询等功能3)体现程序实现算法复杂度优化 4)体现程序的健壮性 二项目设计分析 1、系统预期实现基本功能: (结合本系统预期具体实现,描述出对应基本要求(增、删、改、查等)的具体功能) 1. 2. 3. 4. 5. 6. 7. 2、项目模块功能描述 (基本分为组织实施组织、程序功能模块编写、系统说明撰写等。其中程序功能子模块实现) 模块一: 主要任务:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 模块二: 主要任务:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 模块n: 主要任务:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

道路运输安全心得体会

道路运输安全心得体会 这次的道路运输安全学习,向广大群众宣传道路运输安全生产的有关法律法规,营造起安全生产"人人参与,全社会共同关注"的良好社会舆论氛围。下面是我为大家收集整理的道路运输安全心得体会,欢迎大家阅读。 道路运输安全心得体会篇1 20xx年我局在县委、县政府和市运管局的领导下,在县安委会的大力指导下,本着"安全至上,预防为主"的指导思想,加大工作力度,强化安全监管,使我县道路运输安全生产形势稳中有升,较好的完成全年安全生产工作任务。现将全年安全生产工作情况进行汇报: (一)及时部署全年工作 为了加强对我县道路运输安全生产管理,落实安全生产责任制,县局在年初开了《全县道路运输春运工作会议》,下发了《20xx年道路运输安全工作计划》部署了20xx年主要工作,成立了安全生产领导小组,并与各运输企业签订了《20xx年度安全生产责任书》。 (二)确保春运安全生产 每年春运工作是对道路运输行业安全监管工作的综合检验,今年春运以来,我局按照"以人为本、安全有序、方便快捷"的原则,以安全为重点,以服务为主题,强化领导,扎实工作,春运期间未发生过一起客运安全事故,圆满完成了春运工作任务,实现了安全春运阶段性的目标。 (三)认真开展各项专项安全生产整治工作 1、开展全县道路运输安全整治专项行动工作,为预防和减少道路运输企业安全生产事故,切实保护人民群众生命财产安全,我局在全行业开展了安全生产专项整治工作,该项整治工作自4月20日开始至月底结束,全县各运输企业高度重视,加强了对违法违规从业人员的处罚和教育,组织违法违规驾驶员进行学习,通过各种措施,使该项整治工作开展得具体而深入,从业人员素质明显提高。 2、开展了严厉打击非法生产经营建设行为专项行动,道路客运隐患整治专项行动和安全生产事故遏制行动。根据省、市、县安排和会议文件精神,我局

数据结构课程设计报告模板

课程设计说明书 课程名称:数据结构 专业:班级: 姓名:学号: 指导教师:成绩: 完成日期:年月日

任务书 题目:黑白棋系统 设计内容及要求: 1.课程设计任务内容 通过玩家与电脑双方的交替下棋,在一个8行8列的方格中,进行棋子的相互交替翻转。反复循环下棋,最后让双方的棋子填满整个方格。再根据循环遍历方格程序,判断玩家与电脑双方的棋子数。进行大小判断,最红给出胜负的一方。并根据y/n选项,判断是否要进行下一局的游戏。 2.课程设计要求 实现黑白两色棋子的对峙 开发环境:vc++6.0 实现目标: (1)熟悉的运用c语言程序编写代码。 (2)能够理清整个程序的运行过程并绘画流程图 (3)了解如何定义局部变量和整体变量; (4)学会上机调试程序,发现问题,并解决 (5)学习使用C++程序来了解游戏原理。 (6)学习用文档书写程序说明

摘要 本文的研究工作在于利用计算机模拟人脑进行下黑白棋,计算机下棋是人工智能领域中的一个研究热点,多年以来,随着计算机技术和人工智能技术的不断发展,计算机下棋的水平得到了长足的进步 该程序的最终胜负是由棋盘上岗双方的棋子的个数来判断的,多的一方为胜,少的一方为负。所以该程序主要运用的战术有削弱对手行动战术、四角优先战术、在游戏开局和中局时,程序采用削弱对手行动力战术,即尽量减少对手能够落子的位置;在游戏终局时则采用最大贪吃战术,即尽可能多的吃掉对手的棋子;而四角优先战术则是贯穿游戏的始终,棋盘的四角围稳定角,不会被对手吃掉,所以这里是兵家的必争之地,在阻止对手进角的同时,自己却又要努力的进角。 关键词:黑白棋;编程;设计

交通行政执法培训学习心得体会[工作范文]

交通行政执法培训学习心得体会 篇一:学习交通行政执法的心得体会 学习交通行政执法的心得体会 根据省交通运输厅有关学习培训的通知精神和要求,在市局的领导组织部署下,我参加了于11月7日至19日,在清远市交通运输局开设交通行政执法学习第二期培训班。市交通运输局聘请法学专家教授,对全市交通行政执法人员开展了法律法规综合培训,通过12天的培训学习,使我自己的法律意识有了明显提高,以前,我是从事运政工作的,对路政或水政这些都没有深入的学习,只是从法律条文表面理解,现在能够领悟到法律的更深层次内涵,有了质的转变。通过12天学习《中华人民共和国道路运输条例》、《中华人民共和国公路法》、《行政处罚法》、《行政复议法》、《交通行政执法规范》、《交通行政执法禁令》和《交通行政执法忌语》等法规和有关路政、运政、水政行政执法的文件,使我充分认识到进行严格、公正、文明执法的是交通执法工作的准绳,也更加明确了作为一名交通行政执法人员应具备的职业道德和自身素质。本人结合自身实际工作,认真分析与总结经验,深深体会到以下四点心得: (一)是认真学习、全面贯彻、正确实施相关规章,是当前我道路运输管理工作的一项重要任务。通过培训,我在

从事道路运输行政许可和执法管理时,能够准确理解和正确把握法律法规的主要原则、基本制度和各项具体规定,此后也不断学习相关的法律法规知识,从而提高自己的业务水平,特别是对关系当事人切身利益的内容,如市场准入条件、行政许可程序、相关主体的权利和义务的认识,促进道路运输管理工作在法制的轨道上健康运行。 (二)是认真清理道路运输管理的规范性文件。在5部相关配套规章颁布之前,原有颁布一系列道路运输管理的规范性文件,在新的道路运输管理法规和制度重新确立的新情况下,在交通行政执法过程中,应当注意对现有规范性文件进行清理,对与《中华人民共和国道路运输条例》及相关配套规章相抵触的,如交通部1995年9月6日发布的《省际道路旅客运输管理办法》、20XX年4月27日发布的《道路旅客运输企业经营资质管理规定》等规范性文件同时废止,根据现行规定,结合本地实际,将《中华人民共和国道路运输条例》及相关配套规章的立法精神和制度落到实处。 (三)是严格执行各项规章,加强道路运输行业管理。全面、准确、严格地贯彻执行《中华人民共和国道路运输条例》及相关配套规章。一是按有关规章的规定,规范道路运输行政许可行为;二是严格运输市场准入关,对达不到许可条件的一律不得准入;三是按照新规章的规定换发相关证照工作;四是加强对道路运输市场的监管,依法严厉打击各种

数据结构实验总结报告

数据结构实验总结报告 一、调试过程中遇到哪些问题? (1)在二叉树的调试中,从广义表生成二叉树的模块花了较多时间调试。 由于一开始设计的广义表的字符串表示没有思考清晰,处理只有一个孩子的节点时发生了混乱。调试之初不以为是设计的问题,从而在代码上花了不少时间调试。 目前的设计是: Tree = Identifier(Node,Node) Node = Identifier | () | Tree Identifier = ASCII Character 例子:a(b((),f),c(d,e)) 这样便消除了歧义,保证只有一个孩子的节点和叶节点的处理中不存在问题。 (2)Huffman树的调试花了较长时间。Huffman编码本身并不难处理,麻烦的是输入输出。①Huffman编码后的文件是按位存储的,因此需要位运算。 ②文件结尾要刷新缓冲区,这里容易引发边界错误。 在实际编程时,首先编写了屏幕输入输出(用0、1表示二进制位)的版本,然后再加入二进制文件的读写模块。主要调试时间在后者。 二、要让演示版压缩程序具有实用性,哪些地方有待改进? (1)压缩文件的最后一字节问题。 压缩文件的最后一字节不一定对齐到字节边界,因此可能有几个多余的0,而这些多余的0可能恰好构成一个Huffman编码。解码程序无法获知这个编码是否属于源文件的一部分。因此有的文件解压后末尾可能出现一个多余的字节。 解决方案: ①在压缩文件头部写入源文件的总长度(字节数)。需要四个字节来存储这个信息(假定文件长度不超过4GB)。 ②增加第257个字符(在一个字节的0~255之外)用于EOF。对于较长的文件,

会造成较大的损耗。 ③在压缩文件头写入源文件的总长度%256的值,需要一个字节。由于最后一个字节存在或不存在会影响文件总长%256的值,因此可以根据这个值判断整个压缩文件的最后一字节末尾的0是否在源文件中存在。 (2)压缩程序的效率问题。 在编写压缩解压程序时 ①编写了屏幕输入输出的版本 ②将输入输出语句用位运算封装成一次一个字节的文件输入输出版本 ③为提高输入输出效率,减少系统调用次数,增加了8KB的输入输出缓存窗口 这样一来,每写一位二进制位,就要在内部进行两次函数调用。如果将这些代码合并起来,再针对位运算进行一些优化,显然不利于代码的可读性,但对程序的执行速度将有一定提高。 (3)程序界面更加人性化。 Huffman Tree Demo (C) 2011-12-16 boj Usage: huffman [-c file] [-u file] output_file -c Compress file. e.g. huffman -c test.txt test.huff -u Uncompress file. e.g. huffman -u test.huff test.txt 目前的程序提示如上所示。如果要求实用性,可以考虑加入其他人性化的功能。 三、调研常用的压缩算法,对这些算法进行比较分析 (一)无损压缩算法 ①RLE RLE又叫Run Length Encoding,是一个针对无损压缩的非常简单的算法。它用重复字节和重复的次数来简单描述来代替重复的字节。尽管简单并且对于通常的压缩非常低效,但它有的时候却非常有用(例如,JPEG就使用它)。 变体1:重复次数+字符 文本字符串:A A A B B B C C C C D D D D,编码后得到:3 A 3 B 4 C 4 D。

数据结构课程设计报告模板

数据结构课程设计报告模板

课程设计说明书 课程名称:数据结构 专业:班级: 姓名:学号: 指导教师:成绩: 完成日期:年月日

任务书 题目:黑白棋系统 设计内容及要求: 1.课程设计任务内容 通过玩家与电脑双方的交替下棋,在一个8行8列的方格中,进行棋子的相互交替翻转。反复循环下棋,最后让双方的棋子填满整个方格。再根据循环遍历方格程序,判断玩家与电脑双方的棋子数。进行大小判断,最红给出胜负的一方。并根据y/n选项,判断是否要进行下一局的游戏。 2.课程设计要求 实现黑白两色棋子的对峙 开发环境:vc++6.0 实现目标: (1)熟悉的运用c语言程序编写代码。 (2)能够理清整个程序的运行过程并绘画流程图 (3)了解如何定义局部变量和整体变量; (4)学会上机调试程序,发现问题,并解决 (5)学习使用C++程序来了解游戏原理。 (6)学习用文档书写程序说明

目录 1.引言 (1) 2.课题分析 (4) 3.具体设计过程 (5) 3.1设计思路 (5) 3.2程序设计流程图 (5) 3.3.函数实现说明 (10) 4.程序运行结果 (12) 5.软件使用说明 (16) 6.结论 (19) 参考文献 (20) 附录:源代码 (21)

1.引言 数据结构在计算机科学界至今没有标准的定义。个人根据各自的理解的不同而有不同的表述方法: Sartaj Sahni在他的《数据结构、算法与应用》一书中称:“数据结构是数据对象,以及存在于该对象的实例和组成实例的数据元素之间的各种联系。这些联系可以通过定义相关的函数来给出。”他将数据对象(data object)定义为“一个数据对象是实例或值的集合”。Clifford A.Shaffer在《数据结构与算法分析》一书中的定义是:“数据结构是ADT(抽象数据类型Abstract Data Type)的物理实现。” Lobert L.Kruse在《数据结构与程序设计》一书中,将一个数据结构的设计过程分成抽象层、数据结构层和实现层。其中,抽象层是指抽象数据类型层,它讨论数据的逻辑结构及其运算,数据结构层和实现层讨论一个数据结构的表示和在计算机内的存储细节以及运算的实现。数据结构具体指同一类数据元素中,各元素之间的相互关系,包括三个组成成分,数据的逻辑结构,数据的存储结构和数据运算结构。 1.1. 重要意义 一般认为,一个数据结构是由数据元素依据某种逻辑联系组织起来的。对数据元素间逻辑关系的描述称为数据的逻辑结构;数据必须在计算机内存储,数据的存储结构是数据结构的实现形式,是其在计算机内的表示;此外讨论一个数据结构必须同时讨论在该类数据上执行的运算才有意义。 在许多类型的程序的设计中,数据结构的选择是一个基本的设计考虑因素。许多大型系统的构造经验表明,系统实现的困难程度和系统构造的质量都严重的依赖于是否选择了最优的数据结构。许多时候,确定了数据结构后,算法就容易得到了。有些时候事情也会反过来,我们根据特定算法来选择数据结构与之适应。不论哪种情况,选择合适的数据结构都是非常重要的。 选择了数据结构,算法也随之确定,是数据而不是算法是系统构造的关键因素。这种洞见导致了许多种软件设计方法和程序设计语言的出现,面向对象的程序设计语言就是其中之一。 1.2. 研究内容

数据结构课程设计小结5篇

数据结构课程设计小结5篇一周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情的方法和技巧。在设计过程中,和同学们相互探讨,相互学习,相互监督。我学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世,这次课程设计对我来说受益良多。 课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.“千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。我这次设计的科目是数据结。 数据结构,是一门研究非数值计算的程序设计问题中计算机的操作对象(数据元素)以及它们之间的关系和运算等的学科,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型。作为一门独立的课程在国外是从20XX年才开始设立的。20XX年美国唐·欧·克努特教授开创了数据结构的最初体系,他所著的《计算机程序设计技巧》第一卷《基本算法》是第一本较系统地阐述数据的逻辑结构和存储结构及其操作的著作。“数据结构”在计算机科学中是一门综合性的专业基础课。数据结构是介于数学、计算机硬件和计算

机软件三者之间的一门核心课程。数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础。 通过这次模具设计,我在多方面都有所提高。 一、编译工具VisualC++ 很多程序在结构上是独立的,但是本此设计的程序功能不是零散的,它有一个连接是的程序是一个整体,怎样达到这种统一体呢?因为这个输出连接是贯穿始终的。说到这,就应该说以下我所应用的调试工具,也就是运行环境VisualC++,可以充分利用Windows的支持剪贴版和英文的特点。正是在实现循环链表的程序中充分利用这个特点,才能制作出全汉化的初始化画面。 二、巩固和温习了C语言 在界面设置中使用函数调用while。其中文本显示颜色和背景颜色都可以任意按照自己的喜好,任意改变,但改变的时候必须采用标准英文大写,同时在制作显示菜单的窗口,大小根据菜单条数设计。最后采用printf输出程序设计界面。 这次的程序软件基本上运行成功,可以简单的建立链式循环链表,并进行输出,及循环语句的运用和选择语句的控制。由于时间和知识上的限制,使得程序规模相对较小,即

交通运输工作心得体会参考范文

交通运输工作心得体会参考范文 导读:本文交通运输工作心得体会参考范文,来源互联网,仅供读者阅读参考. 交通运输工作心得体会【1】 本人原在市运管处工作,由于工作需要,今年三月份到安丰交管所任所长。交管所长是交通运输系统最基层的行政领导,既是指挥员又是战斗员,责任重、压力大,任职七个多月对我的锻炼很大,帮助很大,体会很深。特别是每月一次的局党委中心组学习交流,每次学习我都有新的感悟、新的收获和新的提高。当然自己素质和能力的提升离不开领导的关心、支持,离不开同事的帮助、配合。根据安排,近期我认真阅读了局党委推荐的《中层领导的处事方略与说话技巧》一书,我感受颇深,受益匪浅。对于我来说,处事方略和说话技巧很重要,值得深思与修炼,必须学好、用好,与领导、同事和群众之间友好相处,提高团队战斗力、执行力,提升社会满意度。下面我从书中第一章“追随”的内容,就如何在领导的支持下搞好辖区运输管理工作,略谈本人的四点感受。 一、尊敬领导,服从上级,顾全大局。下级尊重领导,维护领导是基本的组织原则,对领导要尊敬,说话要有分寸,不当众和领导过不去,你是对的能说服领导更好,不能说服表达你的见解就行。因为人所处的位置不同,往往看问题的角度、处理问题的方法也不相同,对于一个单位来讲,所属科室队所只是其中的组成部分,一切工作都要服从单位的安排部署。局领导是从单位整个发展来考虑,是总体把握;而一个中层领导就具体分管一项,所考虑的角度更多的是从自身科室队所来考虑,是局部把握。作为中层领导必须摆正自己的位置,顾全大局,主动服从上级的领导,积极主动,不图名利,不计得失,全身心地投入工作中,全力以赴完成各项目标任务。

数据结构课程设计报告模板2013

课程设计(论文)任务书 学院专业班 一、课程设计(论文)题目 二、课程设计(论文)工作自年月日起至年月日止。 三、课程设计(论文) 地点: 四、课程设计(论文)内容要求: 1.课程设计的目的 为了配合《数据结构》课程的教学,使学生能更深刻的领会《数据结构》课程的重要性,特开设此课程设计;编写一些在特定数据结构上的算法,通过上机调试,更好的掌握各种数据结构及其特点,培养学生综合运用所学理论知识解决复杂实际问题的实践能力、研究性学习能力和团队合作能力。 2.课程设计的任务及要求 1)基本要求 (1)课程设计前必须选定课程设计题目,并认真进行需求分析与系统设计; (2)上机调试之前要认真准备实验程序及调试时所需的测试数据; (3)独立思考,独立完成,严禁抄袭,调试过程要规范,认真记录调试结果; (4)上机结束后认真规范撰写课设报告,对设计进行总结和讨论。 2)课程设计论文编写要求 (1)要按照书稿的规格撰写打印课设论文 (2)论文包括任务书、目录、绪论、正文、总结、参考文献、附录等 (3)正文中要有问题描述、抽象数据类型的定义、数据的存储结构、设计的求解算法、算法的实现、调试分析与测试结果 (4)课设论文装订按学校的统一要求完成 3)课设考核 从以下几方面来考查: (1)考勤和态度; (2)任务的难易程度及设计思路;

(3)动手调试能力; (4)论文撰写的水平、格式的规范性。 4)参考文献 [1] 严蔚敏, 吴伟民. 数据结构(C语言版)[M]. 北京:清华大学出版社, 2007年. [2] 严蔚敏, 吴伟民. 数据结构题集(C语言版)[M]. 北京:清华大学出版社, 2007年. [3] 谭浩强. C语言程序设计[M]. 北京:清华大学出版社,2006年. 5)课程设计进度安排 内容天数地点 构思及收集资料1图书馆 程序设计与调试3计算机房 撰写论文1图书馆 6)任务及具体要求 (此处填写任务书中自已所选题目的要求) 学生签名:亲笔签名 年月日 课程设计(论文)评审意见 (1)考勤和态度:优()、良()、中()、一般()、差()(2)任务难易及设计思路:优()、良()、中()、一般()、差()(3)动手调试能力评价:优()、良()、中()、一般()、差()(4)论文撰写水平及规范性评价:优()、良()、中()、一般()、差() 评阅人:职称:讲师 年月日

关于数据结构课程设计心得体会范文

关于数据结构课程设计心得体会范文 心得体会是指一种读书、实践后所写的感受性文字。是指将学习的东西运用到实践中去,通过实践反思学习内容并记录下来的文字,近似于经验总结。下面是小编搜集的关于数据结构课程设计心得体会范文,希望对你有所帮助。 关于数据结构课程设计心得体会(1) 这学期开始两周时间是我们自己选题上机的时间,这学期开始两周时间是我们自己选题上机的时间,虽然上机时间只有短短两个星期但从中确实学到了不少知识。上机时间只有短短两个星期但从中确实学到了不少知识。 数据结构可以说是计算机里一门基础课程,据结构可以说是计算机里一门基础课程,但我觉得我们一低计算机里一门基础课程定要把基础学扎实,定要把基础学扎实,然而这次短短的上机帮我又重新巩固了 c 语言知识,让我的水平又一部的提高。数据结构这是一门语言知识让我的水平又一部的提高。数据结构这是一门知识,纯属于设计的科目,它需用把理论变为上机调试。 纯属于设计的科目,它需用把理论变为上机调试。它对我们来说具有一定的难度。它是其它编程语言的一门基本学科。来说具有一定的难度。它是其它编程语言的一门基本学科。我选的上机题目是交叉合并两个链表,对这个题目,我选的上机题目是交叉合并两个链表,对这个题目,我觉得很基础。刚开始调试代码的时候有时就是一个很小的错觉得很基础。 刚开始调试代码的时候有时就是一个很小的错调试代码的时候误,导致整个程序不能运行,然而开始的我还没从暑假的状导致整个程序不能运行,态转到学习上,每当程序错误时我都非常焦躁,态转到学习上,每当程序错误时我都非常焦躁,甚至想到了放弃,但我最终找到了状态,一步一步慢慢来,放弃,但我最终找到了状态,一步一步慢慢来,经过无数次的检查程序错误的原因后慢慢懂得了耐心是一个人成功的必然具备的条件! 同时,通过此次课程设计使我了解到,必然具备的条件! 同时,通过此次课程设计使我了解到,硬件语言必不可缺少,要想成为一个有能力的人,必须懂得件语言必不可缺少,要想成为一个有能力的人,硬件

交通心得体会4篇

交通心得体会4篇 第一篇:关于交通安全教育心得体会 交通安全关乎生命,生命没有彩排。全世界过6分钟就有一人死于车祸,全世界每一分钟就有人伤于车祸,全世界死于车祸比世界大战死的还要多,而我国交通死亡事故是全世界第一,每天,都会有人命丧于那无情的飞奔车轮底下,成为交通安全路上又一个警示灯。车祸,让许许多多温暖的家庭支离破碎,让幸福在车祸中断送。一个个鲜活的生命在车祸中转瞬即逝,许许多多肇事司机在一失足间铸就了千古恨。触目惊心的数,成千上万的亲人就在车祸的转眼间中沉浸在悲痛之中。 当因超速超载而引出的惨重的车祸;当想象他们丧失亲人时那悲痛欲绝的情景,谁还会不真真切切的感受到生命的可贵无处不在违法超载(员),为了一点蝇头小利和一时的方便便漠视了自己和他人的人身安全;超速行驶无视法律法规的要求结果酿成了大祸,酒后驾车,害人又害己,“杯中一滴酒,亲人两行泪”,连无辜的小学生都不能幸免遇难;由于法律意识淡薄,安全知识匮乏,无证驾车、违法超车会车、疲劳驾驶、操作不当、肇事逃逸等等交通违法行为导致的接二连三的交通事故一个个向我们涌来,一张张团圆的景象灰飞烟灭。 在血的教训的照映下,生命如此地脆弱,如此地不堪一击。

多一份小心,多一份关心,就会少一份灾难,少一份失望。珍惜生命,从我做起,为不再让亲友生离死别的场面再一次出现,不让交通事故无情地吞噬我们无辜的生命。我一定严格遵守各项交通道路交通安全法规法律,时刻以清醒的头脑掌握好手中的方向盘,控制好脚下飞旋的车轮,守好道路交通安全的第一道防线,不开霸王车、不违规超车会车、不无证驾驶、不疲劳驾驶、不酒后驾驶,不超载、超速,避免心存侥幸而给自己和他人留下终生的痛苦和遗憾。 毕竟,命大于天! 第二篇:交通安全教育心得体会 生命对于人仅有一次,在浩瀚的宇宙成长与繁衍过程中,生命就是一瞬间的火花,多么的短暂与美妙啊!那么谁不想在这美好的世界里多一声欢笑,多一次与亲友相聚呢,啊,生命是那么如此的美好,我们有什么理由不去好好珍惜与爱护呢因为生命只有一次,我们更应该珍惜生命,拥抱健康! 3月29日,是全国中小学“安全教育日”,我们学校来了一批特殊的客人————交警队的警察叔叔。他们是来给我们讲关于安全方面的知识的,目的是要让我们这些小学生遵守交通规则,爱惜自己的生命。当今社会有许多人不遵守交通法规,不注意交通安全,最终在无情的车祸中丧生,对此,我们感到惋惜、悲痛。

最新数据结构实训总结

精品文档 这次课程设计的心得体会通过实习我的收获如下1、巩固和加深了对数据结构的理解,提高综合运用本课程所学知识的能力。2、培养了我选用参考书,查阅手册及文献资料的能力。培养独立思考,深入研究,分析问题、解决问题的能力。3、通过实际编译系统的分析设计、编程调试,掌握应用软件的分析方法和工程设计方法。4、通过课程设计,培养了我严肃认真的工作作风,逐步建立正确的生产观念、经济观念和全局观念。从刚开始得觉得很难,到最后把这个做出来,付出了很多,也得到了很多,以前总以为自己对编程的地方还不行,现在,才发现只要认真做,没有什么不可能。 编程时要认真仔细,出现错误要及时找出并改正,(其中对英语的要求也体现出来了,因为它说明错误的时候都是英语)遇到问题要去查相关的资料。反复的调试程序,最好是多找几个同学来对你的程序进行调试并听其对你的程序的建议,在他们不知道程序怎么写的时候完全以一个用户的身份来用对你的用户界面做一些建议,正所谓当局者迷旁观者清,把各个注意的问题要想到;同时要形成自己的编写程序与调试程序的风格,从每个细节出发,不放过每个知识点,注意与理论的联系和理论与实践的差别。另外,要注意符号的使用,注意对字符处理,特别是对指针的使用很容易出错且调试过程是不会报错的,那么我们要始终注意指针的初始化不管它怎么用以免不必要麻烦。 通过近两周的学习与实践,体验了一下离开课堂的学习,也可以理解为一次实践与理论的很好的连接。特别是本组所做的题目都是课堂上所讲的例子,在实行之的过程中并不是那么容易事让人有一种纸上谈兵的体会,正所谓纸上得来终觉浅绝知此事要躬行。实训过程中让我们对懂得的知识做了进一步深入了解,让我们的理解与记忆更深刻,对不懂的知识与不清楚的东西也做了一定的了解,也形成了一定的个人做事风格。 通过这次课程设计,让我对一个程序的数据结构有更全面更进一步的认识,根据不同的需求,采用不同的数据存储方式,不一定要用栈,二叉树等高级类型,有时用基本的一维数组,只要运用得当,也能达到相同的效果,甚至更佳,就如这次的课程设计,通过用for的多重循环,舍弃多余的循环,提高了程序的运行效率。在编写这个程序的过程中,我复习了之前学的基本语法,哈弗曼树最小路径的求取,哈弗曼编码及译码的应用范围,程序结构算法等一系列的问题它使我对数据结构改变了看法。在这次设计过程中,体现出自己单独设计模具的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,也从中发现自己平时学习的不足和薄弱环节,从而加以弥补。 精品文档

数据结构课程设计报告

山东建筑大学 课程设计成果报告 题目: 1.数组实现两个矩阵的相乘运算 2.成绩分析问题 课程:数据结构A课程设计 院(部):管理工程学院 专业:信息管理与信息系统 班级:信管*** 学生姓名:*** 学号:******** 指导教师:******* 完成日期:2016年12月29日

目录 目录 (2) 一、课程设计概述 (3) 二、课程设计题目一 (3) 用数组实现两个矩阵的相乘运算 (3) 2.1[问题描述] (3) 2.2[要求及提示]: (3) 2.3[详细设计] (4) 2.4[调试分析] (5) 2.5[运行结果及分析] (5) 三、课程设计题目二 (6) 成绩分析问题 (6) 3.1[问题描述] (6) 3.2[概要设计] (6) 3.3[存储结构] (7) 3.4[流程图] (7) 3.5[详细设计] (8) 3.6[调试分析] (8) 3.7[运行结果及分析] (22) 四、参考文献: (25)

一、课程设计概述 本次数据结构课程设计共完成两个题:用数组实现两个矩阵相乘运算、成绩分析问题。使用语言:C 编译环境:vc6.0 二、课程设计题目一 用数组实现两个矩阵的相乘运算 2.1[问题描述] #include “stdio.h” int r[6][6]; void mult(int a[6][6] , int b[6][6]){ } main(){ int i,j; int num1[6][6],num2[6][6]; printf(“请输入第一个矩阵的值:”,); for(i=1;i<=6;i++) for(j=1;j<=6;j++) scanf(“%d”,&num1[i][j]); printf(“请输入第二个矩阵的值:”,); for(i=1;i<=6;i++) for(j=1;j<=6;j++) scanf(“%d”,&num2[i][j]); mult(num1,num2); printf(“\n两个矩阵相乘后的结果为:”); for(i=1;i<=6;i++) {for(j=1;j<=6;j++) printf(“%4d”,r[i][j]); printf(“\n”); } } 2.2[要求及提示]: 1、要求完善函数mult( ),

数据结构课程设计报告,含菜单

算法与数据结构课程设计 报告 系(院):计算机科学学院 专业班级:计科11005 姓名:张林峰 学号: 201003784 指导教师:詹泽梅 设计时间:2012.6.11 - 2012.6.18 设计地点:12教机房

目录 一、课程设计目的 (2) 二、设计任务及要求 (2) 三、需求分析 (2) 四、总体设计 .............. 错误!未定义书签。 五、详细设计与实现[含代码和实现界面].. 8 六、课程设计小结 (15)

一.设计目的 1.能根据实际问题的具体情况,结合数据结构课程中的基本理论和基本算法,分析并正确确定数据的逻辑结构,合理地选择相应的存储结构,并能设计出解决问题的有效算法。 2.提高程序设计和调试能力。学生通过上机实习,验证自己设计的算法的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。 3.初步掌握软件开发过程中问题分析、系统设计、程序编码、测试等基本方法和技能。 4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。 5.培养根据选题需要选择学习书籍,查阅文献资料的自学能力。二.设计任务及要求 根据《算法与数据结构》课程的结构体系,设计一个基于DOS菜单的应用程序。要利用多级菜单实现各种功能。比如,主界面是大项,主要是学过的各章的名字诸如线性表、栈与队列、串与数组及广义表等,子菜单这些章中的节或者子节。要求所有子菜单退出到他的父菜单。编程实现时,要用到C++的面向对象的功能。 三.需求分析 菜单运用极其广泛,应用于各行各业。菜单运用起来极其方便。随着社会的发展,社会的行业出现多样化,也就需要各式

心得体会 交通运输工作心得体会相关范文

交通运输工作心得体会相关范文 交通运输工作心得体会相关范文篇1 xx年,是xx规划的收官之年,交通运输系统干部职工团结拼搏、负重奋进,较好地完成了全年各项工作任务,为xx发展划上了圆满的句号。 一是交通运输发展研究持续深入,发展思路目标进一步明确。紧紧抓住沪通公铁大桥落户我市,三条铁路在我市交汇形成枢纽的机遇期,开展综合大交通规划研究,成功组织了综合交通体系规划专家咨询会,初步完成了《综合交通发展战略研究》、《铁路规划研究》编制工作,完成了张家港市交通发展xx规划。 二是交通工程建设持续推进,交通运输网络进一步完善。完成了交通基础设施建设投资9.1亿元。锡张高速工程、张杨公路改造工程、程墩路西延工程和顾家桥改造等工程建成通车,妙丰公路北延、晨丰公路南丰段和晨丰公路(木排港―杨新公路段)按计划推进。苏虞张快速通道工程方案,并于9月底举行了开工仪式,12月20开始全线封闭施工;复线船闸工程完成主体工程施工、巫山大桥和工农桥的方案变更设计,E辅道和下游沉井在紧张实施。公交站场、公交候车亭、运力改造和农村道路会车点建设等四项实事工程的建成启用。全市新建二级路网22.57公里。 三是基础设施养护持续加强,交通运输环境进一步优化。完成国省干线公路养护投入822万元,公路技术状况指数达96,优良路率为

100%。全市完成农村公路大中修总投资7115万元(其中县道1000万元),县道技术状况指数达94.1,优良路率为99.5%,乡村道平均好路率为75.4%。完成了申张线张家港段的坍塌岸坡的应急维护,整治坍塌岸坡320米,干线航道全线清障扫床450公里。 四是行业管理持续规范,依法行政能力进一步增强。全面实施交通行政权力网上公开透明运行和行政指导工作。进一步优化行政许可制度,建立和完善系统内部并联审批机制和市镇两级行政许可工作机制,全年共受理办结行政许可事项2680件。各执法单位,共查处和纠正各类交通运输违法违章行为1.01万起。完成48家企业的新版《港口经营许可证》换发工作,并对符合条件的18家企业发放许可证。市交通运输局被苏州市政府确认为xx年市级依法行政示范单位。 五是交通运输业发展持续加快,运输保障能力进一步提升。继续实施公共交通优先发展,新建公交客运站3座,首末站2座,新增运力80辆,改造运力63辆,其中LNG车辆30辆,新建LNG加汽站1座,新开了3条公交线路,调整22条公交线路走向,优化了公交线网。实施了公交低票价政策,市域最高票价降到4元,公交服务质量进一步提升。全年新增道路客运车辆229辆,货运车辆804辆/6392.5吨(其中危险品运输车辆242辆/3444.86吨),新增驾驶员培训教练车60辆,汽车维修业户51家(其中一、二类维修企业10 家)。深入开展平安交通建设,重点做好了节假日旅客运输、内河水运、重点工程建设安全监管,安全形势稳定。 六是资产管理持续改进,交通经济工作进一步扎实。通过努力,

数据结构课程设计报告模板

数据结构课程设计报告模板 成绩 计算机与信息工程学院 专业名称信息与计算科学 学生班级 10 级1班 学生姓名刘远远 学生学号 2010025707 设计起止时间: 2012年12月17日至 2012年12月21日 课程设计任务书 一、课程设计题目: 线性表的应用(大数运算) 二、课程设计目的与要求: 1、课程设计目的 (1)对数据结构中线性结构的理解和掌握; (2)熟练掌握顺序和链式存储结构有关知识和方法; (3)深入掌握各种数据结构的理论知识和实践操作; (4) 养成良好的编程风格,掌握各种数据结构的编程思想和编程方法; (5)将数据结构的理论知识和实践有机结合起来,为后续知识的学习 做好准备。 2、课程设计要求 (1) 选择合适的存储结构实现大数存储; (2) 设计算法,采用顺序存储结构完成大数的阶乘运算; (3) 设计算法,采用链式存储结构完成大数的加法运算; (4) 设计算法,选择合适的存储结构完成大数的乘法运算;

(5) 其中某一算法采用两种存储结构实现。三、工作计划: 第一阶段(12月17日,12月18日): 查阅各种数据结构相关资料书籍,整理出课程设计初步模型,并形成 课程设计的整体理论框架,理论模型 ; 第二阶段(12月19日,12月21日): 在DEV-C++5或TURBOC2相关开发语言上,进行编码、上机调试, 逐步形成完善的设计程序,使其达到上机完善演示出系统性的课程设计。 四、课程设计提交的文件: (1) 课程设计报告 (2) 课程设计可运行程序(刻录成光盘) 指导教师: 张绍兵 2012 年 12 月 1日 2 线性表有两种不同的存储结构,分别是顺序存储结构和链式存储结构,在实际中应用十分广泛。本设计要求分别利用线性表的两种存储结构,设计算法完成对大数的阶乘、加法、乘法的求解。 数据结构是一门研究非数值计算的程序设计问题中的操作对象以及它们之间的关系的操作的学科,在本次课程设计中,定义存储结构均采用了数据结构中的抽象数据类型,而抽象数据类型是指一个数据模型以及定义在改模型上的一组操作,抽象数据类型的定义仅仅取决于它的一组逻辑特性,而与计算机内部如何表示和实现无关,即不论其内部结构如何变化,只要它的数学特性不变,都不影响其外部的使用。选择合适存储结构实现大数运算。首先需要先解释的是这里大数计算的因数和结果精度一般是少则数十位,多则几万位。在C语言中定义的类型中精度最多只有二十多位,因而在此我们采取用线性表的顺序和链表存储结构的方式来存放大数,

数据结构课程设计心得体会

数据结构课程设计心得体会数据结构课程设计心得体会怎么写,以下是XX精心整理的相关内容,希望对大家有所帮助! 数据结构课程设计心得体会这学期开始两周时间是我们自己选题上机的时间,这学期开始两周时间是我们自己选题上机的时间,虽然上机时间只有短短两个星期但从中确实学到了不少知识。上机时间只有短短两个星期但从中确实学到了不少知识。数据结构可以说是计算机里一门基础课程,据结构可以说是计算机里一门基础课程,但我觉得我们一低计算机里一门基础课程定要把基础学扎实,定要把基础学扎实,然而这次短短的上机帮我又重新巩固了C 语言知识,让我的水平又一部的提高。数据结构这是一门语言知识让我的水平又一部的提高。数据结构这是一门知识,纯属于设计的科目,它需用把理论变为上机调试。纯属于设计的科目,它需用把理论变为上机调试。它对我们来说具有一定的难度。它是其它编程语言的一门基本学科。来说具有一定的难度。它是其它编程语言的一门基本学科。我选的上机题目是交叉合并两个链表,对这个题目,我选的上机题目是交叉合并两个链表,对这个题目,我觉得很基础。刚开始调试代码的时候有时就是一个很小的错觉得很基础。刚开始调试代码的时候有时就是一个很小的错调试代码的时候误,导致整个程序不能运行,然而开始的我还

没从暑假的状导致整个程序不能运行,态转到学习上,每当程序错误时我都非常焦躁,态转到学习上,每当程序错误时我都非常焦躁,甚至想到了放弃,但我最终找到了状态,一步一步慢慢来,放弃,但我最终找到了状态,一步一步慢慢来,经过无数次的检查程序错误的原因后慢慢懂得了耐心是一个人成功的必然具备的条件! 同时,通过此次课程设计使我了解到,必然具备的条件! 同时,通过此次课程设计使我了解到,硬件语言必不可缺少,要想成为一个有能力的人,必须懂得件语言必不可缺少,要想成为一个有能力的人,硬件基础语言。在这次课程设计中,硬件基础语言。在这次课程设计中,虽然不会成功的编写一个完整的程序,但是在看程序的过程中,个完整的程序,但是在看程序的过程中,不断的上网查资料以及翻阅相关书籍,通过不断的模索,测试,发现问题,以及翻阅相关书籍,通过不断的模索,测试,发现问题,解 决问题和在老师的帮助下一步一步慢慢的正确运行程序,决问题和在老师的帮助下一步一步慢慢的正确运行程序,终于完成了这次课程设计,于完成了这次课程设计,虽然这次课程设计结束了但是总觉得自已懂得的知识很是不足,学无止境,得自已懂得的知识很是不足,学无止境,以后还会更加的努力深入的学习。力深入的学习。 数据结构课程设计心得体会本次课程设计,使我对《数

对交通运输的心得体会

对交通运输的心得体会 当好交通先行官 “要想富、先修路”,这句耳熟能详的话道出了交通运输对经济社会发展的重要意义。任何一个地方,小到一个村庄、大到一个国家,富裕和繁荣都离不开便捷的交通。如果缺乏快速便捷的进出大通道,经济发展、资源开发必然会受到制约,如果交通网络不健全、交通方式单一低效,人们的出行、生活以及眼界都会被压制。“千古百业兴,先行在交通。”交通运输自古以来就是民生要义、经济命脉、社会基石,维系着人们的生产生活,承载着社会的发展重托。 交通运输部新任部长李小鹏在2017年全国交通运输工作会议上指出:要全面贯彻落实党的十八大、十八届三中、四中、五中、六中全会精神和中央经济工作会议精神,认真落实“五位一体”总体布局和“四个全面”战略布局,坚持稳中求进工作总基调,坚持牢固树立新发展理念,坚持适应把握引领经济发展新常态,坚持以提高交通运输发展质量和效益为中心,坚持以推进交通运输供给侧结构性改革为主线,着力完善交通运输基础设施网络,着力提升运输服务品质,着力加快行业转型升级,着力推进安全绿色发展,着力推进现代综合交通运输体系建设,全面做好稳增长、促改革、调结构、惠民生、防风险各项工作,努力建设人民满意交通,为促进

经济平稳健康发展和全面建成小康社会当好先行,以优异成绩迎接党的十九大胜利召开。 新的部长带来新的理念,提出了新的要求,必将开始新一轮的改革发展。作为一名基层的交通运输人,我们要进一步强化责任意识和紧迫意识,切实肩负起当代“筑路人”的使命,要以时不我待、只争朝夕的紧迫意识,为交通运输事业作出自己应有的贡献。在当前交通运输大环境总体向好的情况下,我们交通运输工作应该重点从以下两方面展开:一、加大交通基础设施建设,完善交通运输网络。 “拓展大通道,疏通大动脉,激活细血管,促进大循环”是交通基础设施建设的主要目标。经过多年的发展,我们的交通基础建设突飞猛进。但随着经济建设和百姓出行需求的不断提高,当前仍要合理开展交通基础设施建设,以便真正能实现“人便于行,物畅其流”。 1、要快速推进铁路、高速公路、城市快速化道路和快速路连接线的建设,形成有效衔接各种运输方式的开放式、立体化综合运输枢纽。 2、要加强公路水运工程建设质量监督制度建设,组织实施工程建设质量安全违法违规行为信息公开。 3、要开展公路网路况、重点桥梁、隧道技术状况评定和巡查,推进高速公路服务区文明服务创建,抓好普通国省干线公路服务区建设试点。

数据结构课程设计报告模板

校园导游系统设计 一、设计要求 1.问题描述 设计一个校园导游程序,为来访的客人提供信息查询服务。 2.需求分析 (1)设计学校的校园平面图。选取若干个有代表性的景点抽象成一个无向带权图(无向网),以图中顶点表示校内各景点,边上的权值表示两景点之间的距离。 (2)存放景点代号、名称、简介等信息供用户查询。 (3)为来访客人提供图中任意景点相关信息的查询。 (4)为来访客人提供图中任意景点之间的问路查询。 (5)可以为校园平面图增加或删除景点或边,修改边上的权值等。 二、概要设计 为了实现以上功能,可以从3个方面着手设计。 1.主界面设计 为了实现校园导游系统各功能的管理,首先设计一个含有多个菜单项的主控菜单子程序以链接系统的各项子功能,方便用户使用本系统。本系统主控菜单运行界面如图7-10所示。 2.存储结构设计 本系统采用图结构类型(mgraph)存储抽象校园图的信息。其中:各景点间的邻接关系用图的邻接矩阵类型(adjmatrix)存储;景点(顶点)信息用结构数组(vexs)存储,其中每个数组元素是一个结构变量,包含景点编号、景点名称及景点介绍三个分量;图的顶点个数及边的个数由分量vexnum、arcnum表示,它们是整型数据。 此外,本系统还设置了三个全局变量:visited[ ] 数组用于存储顶点是否被访问标志;d[ ]数组用于存放边上的权值或存储查找路径顶点的编号;campus是一个图结构的全局变量。 3.系统功能设计 本系统除了要完成图的初始化功能外还设置了8个子功能菜单。图的初始化由函数initgraph( )实现。依据读入的图的顶点个数和边的个数,分别初始化图结构中图的顶点向量数组和图的邻接矩阵。8个子功能的设计描述如下。 (1)学校景点介绍 学校景点介绍由函数browsecompus( )实现。当用户选择该功能,系统即能输出学校全部景点的信息:包括景点编号、景点名称及景点简介。 (2)查看浏览路线 查看浏览路线由函数shortestpath_dij( )实现。该功能采用迪杰斯特拉(Dijkstra)算法实现。当用户选择该功能,系统能根据用户输入的起始景点编号,求出从该景点到其它景点的最短路径线路及距离。 (3)查看两景点间最短路径

相关文档
最新文档