版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第第页算法设计与分析学习心得算法设计与分析学习心得
班级:物联网1201姓名:刘潇学号:1030612129
一、试验内容:
这学期的算法与设计课,老师布置了这四个问题,分别是货郎担问题,动态生成二维数组,对话框下拉列表,排序问题。
二、学习掌控:
基本程序描述:
〔1〕货郎担问题:货郎担问题属于易于描述但难于解决的闻名难题之一,至今世界上还有不少人在讨论它。货郎担问题要从图g的全部周游路径中求取具有最小成本的周游路径,而由始点出发的周游路径一共有〔n一1〕!条,即等于除始结点外的n一1个结点的排列数,因此货郎担问题是一个排列问题。货郎担的程序实现了利用穷举法解决货郎担问题,可以在城市个数和各地费用给定的状况下利用穷举法逐一计算出每一条路径的费用,并从中选出费用最小的路径。从而求出问题的解
〔2〕费用矩阵:费用矩阵的主要内容是动态生成二维数组。首先由键盘输入自然数,费用矩阵的元素由随机数产生,并取整,把生成的矩阵存放在二维数组中,最末把矩阵内容输出到文件和屏幕上。它采纳分支界限法,分支限界法的基本思想是对包含具有约束条件的最优化问题的全部可行解的解〔数目有限〕空间进行搜寻。该算法在详细执行时,把全部可行的解空间不断分割为越来越小的子集,并为每个子集内的解计算一个下界或上界。动态生成二维n*n的数组程序利用指针表示数组的行和列,并逐一安排空间,在输入n的数值后,系统自动安排空间,生成n*n的数组,并产生随机数填充数组,最末将结果输入到指定文件中。
〔3〕Mfc:在下拉列表框中添加内容程序,在下拉列表对应的函数中利用addstring添加需要的内容。首先定义下拉列表框为ccombo*型,并定义其属性名,利用addstring函数可以任意添加需要的内容。a排序问题:快速排序的运行时间与划分是否对称有关,其最坏状况发生在划分过程中产生的两个区域分别包含n-1个元素和1个元素的时候。其算法的时间繁复度为O(n2),在最好的状况下每次划分的基准恰好为中值,可得其算法时间繁复度为O(n㏒n)。算法的实现和理解和代码实现完全是两回事,想要完全掌控一种算法,需要动手实践,用代码实现,才能理解透彻,真正掌控。b对话框下拉列表:这个项目简约易懂,轻松实现。
三.疑问与总结:
货郎担的问题,我认为穷举法相对比而言是比较初级的方法,费时耗力,适合在练习时选用,但是在实际问题中不建议采纳。克鲁斯卡尔或者普里姆算法求取最小生成树的方法来解决货郎担的问题是更适合现实解决问题的。我认为程序可以用switch函数来将函数分成几个部分更人性化,比如分为解决问题的的选项,输出结果选项,退出程序选项等。再有就是费用矩阵的值可以从文件中读取,而结果也可以径直放在指定文件中,这样在实际应用中比较广泛。
动态生成二维数组的程序我认为假如根据规范性,我的方法是中规中矩的,究竟再向下延伸,生成三维的数组,需要三层的指针来实现。但是就程序的简化程度和计算机处理时间来说,我认为这样双层指针的算法有些太占用内存,究竟要给行和列各安排n个空间。我通过与同学的沟通,我发觉可以用1位数组来实现二维的n*n的数组。首先安排n*n的空间,
然后通过循环在一行的数据达到n时自动换行。这样程序得到了肯定的简化,并且减削了肯定的内存运用。我认为这种方法是比较贴合实际的。
四.心得体会
在计算机软件专业中,算法分析与设计是一门特别重要的课程,许多人为它如痴如醉。许多问题的解决,程序的编写都要依靠它,在软件还是面对过程的阶段,就有程序=算法+数据结构这个公式。算法的学习对于培育一个人的规律思维技能是有极大援助的,它可以培育我们养成思索分析问题,解决问题的技能。
假如一个算法有缺陷,或不适合某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间繁复性和时间繁复度来衡量。算法可以运用自然语言、伪代码、流程图等多种不同的方法来描述。计算机系统中的操作系统、语言编译系统、数据库管理系统以及各式各样的计算机应用系统中的软件,都需要运用详细的算法来实现。算法设计与分析是计算机科学与技术的一个核心问题。因此,学习算法无疑会加强自己的竞争力,提高自己的修为,为自己增彩。
算法设计与分析学习心得
班级:物联网1201姓名:刘潇学号:1030612129
一、试验内容:
这学期的算法与设计课,老师布置了这四个问题,分别是货郎担问题,动态生成二维数组,对话框下拉列表,排序问题。
二、学习掌控:
基本程序描述:
〔1〕货郎担问题:货郎担问题属于易于描述但难于解决的闻名难题之一,至今世界上还有不少人在讨论它。货郎担问题要从图g的全部周游路径中求取具有最小成本的周游路径,而由始点出发的周游路径一共有〔n一1〕!条,即等于除始结点外的n一1个结点的排列数,因此货郎担问题是一个排列问题。货郎担的程序实现了利用穷举法解决货郎担问题,可以在城市个数和各地费用给定的状况下利用穷举法逐一计算出每一条路径的费用,并从中选出费用最小的路径。从而求出问题的解
〔2〕费用矩阵:费用矩阵的主要内容是动态生成二维数组。首先由键盘输入自然数,费用矩阵的元素由随机数产生,并取整,把生成的矩阵存放在二维数组中,最末把矩阵内容输出到文件和屏幕上。它采纳分支界限法,分支限界法的基本思想是对包含具有约束条件的最优化问题的全部可行解的解〔数目有限〕空间进行搜寻。该算法在详细执行时,把全部可行的解空间不断分割为越来越小的子集,并为每个子集内的解计算一个下界或上界。动态生成二维n*n的数组程序利用指针表示数组的行和列,并逐一安排空间,在输入n的数值后,系统自动安排空间,生成n*n的数组,并产生随机数填充数组,最末将结果输入到指定文件中。
〔3〕Mfc:在下拉列表框中添加内容程序,在下拉列表对应的函数中利用addstring添加需要的内容。首先定义下拉列表框为ccombo*型,并定义其属性名,利用addstring函数可以任意添加需要的内容。a排序问题:快速排序的运行时间与划分是否对称有关,其最坏状况发生在划分过程中产生的两个区域分别包含n-1个元素和1个元素的时候。其算法的时间繁复度为O(n2),在最好的状况下每次划分的基准恰好为中值,可得其算法时间繁复度为O(n㏒n)。算法的实现和理解和代码实现完全是两回事,想要完全掌控一种算法,需要动手实践,用代码实现,才能理解透彻,真正掌控。b对话框下拉列表:这个项目简约易懂,轻松实现。
三.疑问与总结:
货郎担的问题,我认为穷举法相对比而言是比较初级的方法,费时耗力,适合在练习时选用,但是在实际问题中不建议采纳。克鲁斯卡尔或者普里姆算法求取最小生成树的方法来解决货郎担的问题是更适合现实解决问题的。我认为程序可以用switch函数来将函数分成几个部分更人性化,比如分为解决问题的的选项,输出结果选项,退出程序选项等。再有就是费用矩阵的值可以从文件中读取,而结果也可以径直放在指定文件中,这样在实际应用中比较广泛。
动态生成二维数组的程序我认为假如根据规
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年北师大版选修5历史上册阶段测试试卷含答案
- 2025年湘师大新版七年级语文上册阶段测试试卷
- 2025年人教A版八年级生物上册月考试卷
- 2025年浙教新版九年级生物下册月考试卷含答案
- 二零二五美容院美容院连锁品牌授权与区域保护合同3篇
- 二零二五版环保型建材模具研发生产合作合同4篇
- 二零二五年度高端婴幼儿配方奶粉销售代理合同3篇
- 二零二五年度党政机关异地培训酒店预订服务合同2篇
- 二零二五年民房买卖合同附属设施租赁服务协议4篇
- 2025年度磨工职业发展规划与劳动合同实施计划4篇
- 2024年09月2024兴业银行总行岗测评笔试历年参考题库附带答案详解
- 山东省烟台市招远市2024-2025学年九年级上学期期末考试英语(笔试)试题(含答案)
- 骆驼祥子读书笔记一至二十四章
- 2025年方大萍安钢铁招聘笔试参考题库含答案解析
- 2024年医师定期考核临床类考试题库及答案(共500题)
- 2025年电力工程施工企业发展战略和经营计划
- 2022年公务员多省联考《申论》真题(安徽C卷)及答案解析
- 大型活动保安培训
- 2024年大学本科课程教育心理学教案(全册完整版)
- 信息系统运维服务类合同6篇
- 江苏省七市2025届高三最后一卷物理试卷含解析
评论
0/150
提交评论