【2017年整理】程序设计与算法综合训练教学大纲2016.doc
文本预览下载声明
《程序设计与算法综合训练》教学大纲
课程编号:
课程名称:程序设计与算法综合训练
英文名称:Comprehensive Training of Programming Design and Algorithm
学分/学时: /80 课程性质:必修
适用专业: 软件工程/网络工程/计算机科学与技术专业
先修课程: 高级语言程序设计(C语言版),数据结构(C语言版)
开课单位: 计算机科学与技术学院
一、课程的教学目标与任务
《程序设计与算法综合训练》是一门面向软件工程专业、网络工程专业、计算机科学与技术专业的综合实践课程。它是配合专业学科平台课程《高级语言程序设计》和《数据结构》而开设的实践性教育环节。
本课程的目的是:通过本课程的综合实践训练,使学生加深对《高级语言程序设计》和《数据结构》课程中基本知识与基本原理的理解;掌握各种数据类型的使用技巧和模块化程序设计的方法;掌握程序设计过程和技巧,( 8学时)
(3)以方阵形式输出迷宫及其通路。
2.重点、难点
重点:针对迷宫问题的特点,利用栈的后进先出特点,选择适当的数据结构。
难点:递归算法的设计与求解。
3.作业及课外学习要求:
按照题意要求独立进行设计,设计结束后要写出课程设计报告点讲授学习,可以支撑毕业要求中的指标点指标点指标点指标达成度评估
项目二 停车场管理系统的设计与实现( 8学时)
停车场内只有一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在停车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后开入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。
以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码及到达或离去的时刻,对每一组输入数据进行操作后的输出数据为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车离去;则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。
栈以顺序结构实现,队列以链表实现。
车场外的便道
难点:按照题意要求独立进行设计,设计结束后要写出课程设计报告点讲授学习,可以支撑毕业要求中的指标点指标点指标点指标达成度评估
项目三 银行业务模拟系统的设计与实现( 8学时)
OpenForDay),模拟银行开门时各数据结构的状态。
(2)事件驱动(EventDrived), 对客户到达和离开事件做相应处理。
(3)下班处理(CloseForDay),模拟银行关门时的动作,统计客户平均逗留时间。
2.重点、难点
重点:
(1)通过实验掌握对离散事件模拟的认识;
(2)进一步理解队列的实现与应用;
(3)对链表的操作有更深层次的理解。
难点:离散事件的模拟。
3.作业及课外学习要求:
按照题意要求独立进行设计,设计结束后要写出课程设计报告点讲授学习,可以支撑毕业要求中的指标点指标点指标点指标达成度评估/译码系统的设计与实现( 16学时)
/译码系统。试为这样的信息收发站设计一个哈夫曼编译码系统。
1.基本要求
(1)初始化(Initialzation)。从数据文件DataFile.data中读入字符及每个字符的权值,建立哈夫曼树HuffTree;
(2)编码(EnCoding)。用已建好的哈夫曼树,对文件ToBeTran.data中的文本进行编码形成报文,将报文写在文件Code.txt中;
(3)译码(Decoding)。利用已建好的哈夫曼树,对文件CodeFile.data中的代码进行解码形成原文,结果存入文件Textfile.txt中;
(4)输出(Output)。输出DataFile.data中出现的字符以及各字符出现的频度(或概率);输出ToBeTran.data及其报文Code.txt;输出CodeFile.data及其原文Textfile.txt;
2.重点、难点
重点:
(1)通过实验理解哈夫曼树的特征及其应用;
(2)哈夫曼树的构造算法设计;
(3)利用构造的哈夫曼树进行编码和译码。
难点:
(1)字符的哈夫曼树编码及存储;
(2)字符的译码与串的匹配算法。
3.作业及课外学习要求:
按照题意要求独立进行设计,设计结束后要写出课程设计报告点讲授学习,
显示全部