国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python生成n個元素的全組合方法

2020-01-04 14:05:06
字體:
來源:轉載
供稿:網友

利用二進制反格雷碼(bynary reflected Gray code)的方式生成n個元素的全組合,Cn1+Cn2+...+Cnn,

如在利用窮舉方法解決背包問題時,就需要找出物品的所有組合的子集。如有物品1,2,3.我們就可以生成3個位串的格雷碼,0表示不選擇該物品,1表示選擇該物品。

算法如下所示:

import copydef brgd(n): ''' 遞歸生成n位的二進制反格雷碼 :param n: :return: ''' if n==1:  return ["0","1"] L1 = brgd(n-1) L2 = copy.deepcopy(L1) L2.reverse() L1 = ["0" + l for l in L1] L2 = ["1" + l for l in L2] L = L1 + L2 return L

以上這篇python生成n個元素的全組合方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 龙山县| 昭平县| 大同市| 高碑店市| 收藏| 新昌县| 黄陵县| 始兴县| 宣威市| 资源县| 宜良县| 洪湖市| 高雄县| 南涧| 肃宁县| 荆门市| 石楼县| 辽阳县| 新田县| 浦东新区| 池州市| 龙州县| 城市| 连南| 同心县| 平阳县| 长乐市| 望城县| 台中市| 固镇县| 灌云县| 梨树县| 玉树县| 江孜县| 邛崃市| 潮州市| 民县| 阜宁县| 广宗县| 定州市| 遂昌县|