最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python非遞歸全排列實現(xiàn)方法

 更新時間:2017年04月10日 09:07:51   投稿:jingxian  
下面小編就為大家?guī)硪黄猵ython非遞歸全排列實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

剛剛開始學習python,當前看到了函數(shù)這一節(jié)。結(jié)合數(shù)組操作,寫了個非遞歸的全排列生成。原理是插入法,也就是在一個有n個元素的已有排列中,后加入的元素,依次在前,中,后的每一個位置插入,生成n+1個新的全排列。因為Python切割數(shù)組或者字符串,以及合并比較方便,所以,程序會節(jié)省很多代碼。

def getArrayInsertCharToStr(STR,CHAR):
  arr =[]
  s_len = len(STR)
  index =0
  while index <= s_len:
    #分割字符串
    arr.append(STR[:index]+CHAR+STR[index:s_len])
    index = index + 1
  return arr  

def getArrayInsertCharToArray(array,CHAR):
  index = 0
  re_array = []
  while index < len(array):
    re_array = re_array + getArrayInsertCharToStr(array[index],CHAR)
    index = index + 1
  return re_array       

def getPermutation(STR):
    resultArr = [STR[0]]
    for item in STR[1:]:
      resultArr = getArrayInsertCharToArray(resultArr,item)
    return   resultArr


print(getPermutation('abc'))

以上這篇python非遞歸全排列實現(xiàn)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

特克斯县| 三都| 大同市| 新绛县| 安阳县| 昭平县| 万源市| 荥经县| 开封县| 海盐县| 定南县| 右玉县| 徐汇区| 西吉县| 阳江市| 卢氏县| 云林县| 揭西县| 沁水县| 新邵县| 阿图什市| 梁山县| 浑源县| 连州市| 新河县| 梁平县| 香河县| 凯里市| 佳木斯市| 临潭县| 利津县| 延安市| 海门市| 邵阳市| 县级市| 昆山市| 宿松县| 阳西县| 昭通市| 凯里市| 周至县|