ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第三章上机报告

2021-10-24 23:02:47  阅读:160  来源: 互联网

标签:arr 第三章 1.1 上机 报告 填表 方格 数组 穿越


1. 实践报告任选一题进行分析。内容包括:

1.1 问题描述

  一个商人穿过一个N×N的正方形的网格,去参加一个非常重要的商务活动。他要从网格的左上角进,右下角出。每穿越中间1个小方格,都要花费1个单位时间。商人必须在(2N-1)个单位时间穿越出去。而在经过中间的每个小方格时,都需要缴纳一定的费用。

  这个商人期望在规定时间内用最少费用穿越出去。请问至少需要多少费用?

注意:不能对角穿越各个小方格(即,只能向上下左右四个方向移动且不能离开网格)。

1.2 算法描述

  使用动态规划求解,输入二维数组,令其首行首列为9999以避免选择到首行首列,令其向右或向下更新数组,如Arr[i][j]将与arr[i-1][j]或arr[i][j-1]相加比较大小来选择从哪走,最后输出ajj[n][n]

1.3 问题求解:

1.1.1 根据最优子结构性质,列出递归方程式

  当只有一个方格时,arr[1][1]

  其他:arr[i][j]=min{arr[i-1][j],arr[i][j-1]}+arr[i][j]

1.1.2 给出填表法中表的维度、填表范围和填表顺序。

  二维,数组arr[n][n],从左往右从上往下

1.1.3 分析该算法的时间和空间复杂度

  O(n^2)

  T(n^2)

1.3 心得体会(对本次实践收获及疑惑进行总结)  

  起初想要设置一个变量记录时间后来发现只要保证一直往下往右就不会超出时间。还有就是要考虑边界条件,以及初始化

2. 你对动态规划算法的理解和体会

  动态规划满足最优子结构和重叠子问题两个特征,需要我们找到问题的递归方程来求解。往往需要创建一个或多个数组,为了避免重叠子问题的多次计算。


标签:arr,第三章,1.1,上机,报告,填表,方格,数组,穿越
来源: https://www.cnblogs.com/moonquakes/p/15456178.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有