博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三章上机实践报告
阅读量:5293 次
发布时间:2019-06-14

本文共 513 字,大约阅读时间需要 1 分钟。

1、实践的题目是:数字三角形.

2、问题的描述是:给定一个由 n行数字组成的数字三角形如下图所示:试设计一个算法,计算出从三角形 的

顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大。

3、算法的描述是:

for(i=n-1;i>=1;i--){

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

         if(b[i][j]>b[i][j+1])

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

         else

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

}}

自下向上开始比较,选择大的数字。

4、算法时间及空间复杂度分析(需要有分析过程):

因为算法里有2重for循环,所以时间复杂度为n^2;申请了a、b两个数组,空间复杂度为n^2。

5、我的心得体会(对本次实践收获及疑惑进行总结):

在运行这题目的代码的时候总是出错,后来发现是因为最后输出的时候输出的是b[1][1]而不是b[0][0];因为忽视了这个小毛病而导致浪费了很多时间,以后对于问题的逻辑要更加严谨才可以。

转载于:https://www.cnblogs.com/anke-poi1234/p/10067660.html

你可能感兴趣的文章
vue-devtools 获取到 vuex store 和 Vue 实例的?
查看>>
Linux 中【./】和【/】和【.】之间有什么区别?
查看>>
Ubuntu sudo 出现 is not in the sudoers file解决方案
查看>>
内存地址对齐
查看>>
看门狗 (监控芯片)
查看>>
#ifndef #define #endif
查看>>
css背景样式
查看>>
JavaScript介绍
查看>>
js中函数与对象的使用
查看>>
正则表达式
查看>>
开源网络漏洞扫描软件
查看>>
yum 命令跳过特定(指定)软件包升级方法
查看>>
创新课程管理系统数据库设计心得
查看>>
Hallo wolrd!
查看>>
16下学期进度条2
查看>>
前端页面卡顿-代码优化
查看>>
nagios通过脚本对系统进行定制监控
查看>>
jquery判断点击鼠标左、中、右键事件
查看>>
java线程池原理
查看>>
为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来?...
查看>>