算法

您所在的位置:网站首页 数组切割子数组最大子数组和最小 算法

算法

2024-07-13 17:03| 来源: 网络整理| 查看: 265

作者:陈太汉

一个整数数组,长度为n,将其分为m份,使各份的和相等,求m的最大值  比如{3,2,4,3,6} 可以分成{3,2,4,3,6} m=1;   {3,6}{2,4,3} m=2  {3,3}{2,4}{6} m=3 所以m的最大值为3

算法 原理的思想是将大问题转换成小问题。就{3,2,4,3,6}的操作步骤:      第一步:想将数组递减排序得{6,4,3,3,2},求出数组中所有数的和m=18,第一个最大的数b=6, m/b=3余数为0,当除数为1,余数为0时终止。当余数不为0时,转到第三步。当余数为0时将数组划分为{6},{4,3,3,2}两个。把{4,3,3,2}看成一个新的数组。      第二步:先用{4,3,3,2}中的最大数与b=6比较,即4



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3