导航:首页 > 编程语言 > python如何按条件分配填充

python如何按条件分配填充

发布时间:2024-11-01 12:49:15

python 如何将长度不同的字符串尽量均匀地分配到N个文件中每一行的字符串作为整体,不能打散。

背包问题的一个变种。或者说是一维装箱算法

你将每一行字符串想象为一个物品,字符串的长度就是这个物品的大小。每个文件相当于不同的箱子,箱子的大小是固定的,装入的物品体积之和不能超过箱子的总容量。

问题就是:如何使用尽可能少的箱子来装入所有的物品,或者:如果使尽可能多的箱子空间利用率更高,以及类似的相关问题。

这类问题的答案不是一个简单的数字,它需要给出一个策略:物品1...n分别装入箱子1...m(m<=n).

对于二维装箱或三维等,区别主要在于解法的复杂度,但一个解法一般来说其思路是可以从一维扩展到二维或者三维的。


这类问题目前来说,没有全局最优解(即,没有一个算法能确保在所有情况下均能得到最好的结果),但可以得到局部最优解。算法有多种,如最常见的贪心算法,或动态规划。

贪心算法的思路比较简单:把所有的物品从大到小排好序,拿一个箱子,尝试装入最大的物品,如果不能装入,就尝试装入小一些的物品,如此循环,直到所有物品装入所有箱子。

算法很简单,但很多时候得到的结果并不理想。

❷ python中的for i in range怎么用

❸ python怎么将列表中元素分配成三份(无需连续),列举出所有的方案

挡板+枚举法如何
比如5个元素分成3份,实际上就是从4个空隙里面选两个插进去板子就行了
对于x各元素,也就是对1~x-1进行枚举两个数i和j(i!=j)二重循环搞定
取的时候用列表切片就好
比如l1=l[:i], l2=l[i:j], l3=l[j:]酱紫

阅读全文

与python如何按条件分配填充相关的资料

热点内容
2020江西买车购置税算法 浏览:222
百度已解压文件在哪 浏览:88
小米安卓turbo手势怎么用 浏览:941
php框架作用 浏览:35
python消息自定义 浏览:949
四川内江电信宽带服务器云主机 浏览:953
编译后的源文件到哪找 浏览:956
小米多模网关如何接入aqaraapp 浏览:915
python为什么true 浏览:591
androidfonts 浏览:341
51单片机外接电源维修 浏览:337
文件解压软件是干嘛的 浏览:936
linux设置服务器端ip地址 浏览:356
如何把代码编译出来 浏览:129
python之禅中文版 浏览:752
androidbluetooth开发 浏览:681
如何买美股什么app可以买美股 浏览:509
分享缓解压力的做法 浏览:383
python图像处理框架 浏览:231
汽车车门加密封条好吗 浏览:498