首页 > 编程语言 > 详细

算法第二章上机实践报告

时间:2020-10-04 00:11:23      阅读:37      评论:0      收藏:0      [点我收藏+]
  1. 实践题目名称:派
  2. 问题描述:给定两个整数n和f,分别代表派的数量,f+1表示需要分得派的人数。随后给出每个派的体积,要求每人分得的派体积相同,且分得的派只能来自一个派,求每人所能分得的最大派的体积。
  3. 算法描述:我们可以得知分得的派体积在(0,最大派体积]之间,因此,我们可以采用二分法一步步找到最优的答案。如果中间的体积是存在的派里能分得的,我们就可以把体积范围缩小到右半部分,如果不满足条件,就可以把范围缩小到左半部分,直到体积范围小于1e5,此时的体积便能满足最终条件。
  4. 算法时间及空间复杂度分析(要有分析过程)

     算法时间复杂度:输入是o(n),二分搜索是n(logn),fly函数是n,所以算法的时间复杂度是o(n)。

     算法空间复杂度:因为代码里除了已有的空间存在,没有新增的所需空间,因此空间复杂度为o(1)。

   5.心得体会(对本次实践收获及疑惑进行总结):在这道题目里,我没有想到使用二分算法进行求解,因此只能查看题解。得知在某个区间求特定值的问题可以用二分算法来做,也算是一大收获。

技术分享图片

算法第二章上机实践报告

原文:https://www.cnblogs.com/yyyyuanxian/p/13765944.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!