導航:首頁 > 編程語言 > 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如何按條件分配填充相關的資料

熱點內容
阿里雲掃碼登錄伺服器 瀏覽:970
化學基礎pdf 瀏覽:896
51單片機晶碼管 瀏覽:281
怎麼查伺服器假死原因日誌在哪看 瀏覽:277
掃描pdf文件 瀏覽:926
解壓密碼百度雲在線解壓 瀏覽:767
傳播學演算法推薦 瀏覽:749
我的世界網路游戲如何查找伺服器 瀏覽:257
安卓和蘋果通訊錄怎麼互傳 瀏覽:203
怎麼打開隱私與應用加密的菜單 瀏覽:416
我的世界伺服器小游戲的地址大全 瀏覽:578
在網路安全中加密安全機制提供了數據的 瀏覽:249
南京前端程序員私活怎麼收費 瀏覽:981
拓撲pdf 瀏覽:440
如何在工行app查我的訂單 瀏覽:214
車壓縮機改電動 瀏覽:83
如何尋找音樂app 瀏覽:831
一加加密的照片 瀏覽:200
阿里雲虛擬主機php 瀏覽:639
不卡點的解壓視頻 瀏覽:391