算法设计与分析学习心得
更新时间:2023-06-09 08:46:01 阅读量: 实用文档 文档下载
算法设计与分析学习心得
班级:物联网1201 姓名:刘潇 学号:1030612129
一、实验内容:
这学期的算法与设计课,老师布置了这四个问题,分别是货郎担问题,动态生成二维数组,对话框下拉列表,排序问题。
二、学习掌握:
基本程序描述:
(1)货郎担问题:货郎担问题属于易于描述但难于解决的著名难题之一,至今世界上还有不少人在研究它。货郎担问题要从图g的所有周游路线中求取具有最小成本的周游路线,而由始点出发的周游路线一共有(n一1)!条,即等于除始结点外的n一1个结点的排列数,因此货郎担问题是一个排列问题。货郎担的程序实现了利用穷举法解决货郎担问题,可以在城市个数和各地费用给定的情况下利用穷举法逐一计算出每一条路线的费用,并从中选出费用最小的路线。从而求出问题的解
(2)费用矩阵:费用矩阵的主要内容是动态生成二维数组。首先由键盘输入自然数,费用矩阵的元素由随机数产生,并取整,把生成的矩阵存放在二维数组中,最后把矩阵内容输出到文件和屏幕上。它采用分支界限法,分支限界法的基本思想是对包含具有约束条件的最优化问题的所有可行解的解(数目有限)空间进行搜索。该算法在具体执行时,把全部可行的解空间不断分割为越来越小的子集,并为每个子集内的解计算一个下界或上界。动态生成二维n*n的数组程序利用指针表示数组的行和列,并逐一分配空间,在输入n的数值后,系统自动分配空间,生成n*n的数组,并产生随机数填充数组,最后将结果输入到指定文件中。
(3)Mfc:在下拉列表框中添加内容程序,在下拉列表对应的函数中利用addstring添加需要的内容。首先定义下拉列表框为ccombox型,并定义其属性名,利用addstring函数可以任意添加需要的内容。a排序问题:快速排序的运行时间与划分是否对称有关,其最坏情况发生在划分过程中产生的两个区域分别包含n-1个元素和1个元素的时候。其算法的时间复杂度为O(n 2),在最好的情况下每次划分的基准恰好为中值,可得其算法时间复杂度为O(n㏒n)。 算法的实现和理解和代码实现完全是两回事,想要完全掌握一种算法,需要动手实践,用代码实现,才能理解透彻,真正掌握。b对话框下拉列表:这个项目简单易懂,轻松实现。
三.疑问与总结:
货郎担的问题,我认为穷举法相对比而言是比较初级的方法,费时耗力,适合在练习时选用,但是在实际问题中不建议采用。克鲁斯卡尔或者普里姆算法求取最小生成树的方法来解决货郎担的问题是更适合现实解决问题的。我认为程序可以用switch函数来将函数分成几个部分更人性化,比如分为解决问题的的选项,输出结果选项,退出程序选项等。再有就是费用矩阵的值可以从文件中读取,而结果也可以直接放在指定文件中,这样在实际应用中比较广泛。
动态生成二维数组的程序我认为如果按照规范性,我的方法是中规中矩的,毕竟再向下延伸,生成三维的数组,需要三层的指针来实现。但是就程序的简化程度和计算机处理时间来说,我认为这样双层指针的算法有些太占用内存,毕竟要给行和列各分配n个空间。我通过与同学的交流,我发现可以用1位数组来实现二维的n*n的数组。首先分配n*n的空间,
然后通过循环在一行的数据达到n时自动换行。这样程序得到了一定的简化,并且减少了一定的内存使用。我认为这种方法是比较贴合实际的。
四.心得体会
在计算机软件专业中,算法分析与设计是一门非常重要的课程,很多人为它如痴如醉。很多问题的解决,程序的编写都要依赖它,在软件还是面向过程的阶段,就有程序=算法+数据结构这个公式。算法的学习对于培养一个人的逻辑思维能力是有极大帮助的,它可以培养我们养成思考分析问题,解决问题的能力。
如果一个算法有缺陷,或不适合某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂性和时间复杂度来衡量。算法可以使用自然语言、伪代码、流程图等多种不同的方法来描述。计算机系统中的操作系统、语言编译系统、数据库管理系统以及各种各样的计算机应用系统中的软件,都必须使用具体的算法来实现。算法设计与分析是计算机科学与技术的一个核心问题。因此,学习算法无疑会增强自己的竞争力,提高自己的修为,为自己增彩。
正在阅读:
算法设计与分析学习心得06-09
大学生辅导员述职报告12-10
西师版六年级数学总复习04-14
工程第二次审计报告10-03
PICC护理常规03-15
冬日,有暖阳在心中11-03
爱弹琴画画的我作文450字06-29
嵊州市基本医疗保险特殊病种门诊治疗建议书04-09
计算机网络第三章习题03-08
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 算法
- 心得
- 分析
- 学习
- 设计
- 济南电子路考完整版
- 2013年咸宁市中考化学、生物试卷及答案
- 气象农业生态环境服务提升策略建议
- 《后砌墙与剪力墙接缝处抹灰开裂修复方案1》
- 地铁自动售票系统VHDL
- 豫北地区不同时期冬小麦品种产量性状分析
- 韩剧《制作人》经典语录台词
- 员工职业化任职资格评价实施方案
- mysql 学习系列 字符串
- 初二上册历史导言课
- (创新+拓展设计)高考英语题型突破——七选五技巧与真题对接
- 1牛津英语8A Unit5 Birdwatchers
- 冲破思想的牢笼——人的发现
- 我国股票市场资本配置效率研究
- 贵州省遵义航天高级中学2015届高三最后一次模拟化学试题 Word版含答案
- 浅谈提高钢板桩围堰合拢精度
- 党的十八大专题学习辅导
- 器械分类目录(更新至201408)
- 结合自身工作和生活实际,谈谈如何让把握好情绪
- 日本才是全球经济真正的定时炸弹