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

首頁 > 編程 > Python > 正文

Python實(shí)現(xiàn)的生成格雷碼功能示例

2020-02-22 22:58:48
字體:
供稿:網(wǎng)友

本文實(shí)例講述了Python實(shí)現(xiàn)的生成格雷碼功能。分享給大家供大家參考,具體如下:

問題

在一組數(shù)的編碼中,若任意兩個(gè)相鄰的代碼只有一位二進(jìn)制數(shù)不同, 則稱這種編碼為格雷碼(Gray Code),請編寫一個(gè)函數(shù),使用遞歸的方法生成N位的格雷碼。

解決方法:

給定一個(gè)整數(shù)n,請返回n位的格雷碼,順序?yàn)閺?開始。

測試樣例:

返回:["0","1"]

題目很刁鉆,題干很簡潔,樣例很高冷……

其中有一些微妙的關(guān)系

發(fā)現(xiàn)了這個(gè)規(guī)律之后,代碼自然就很好寫了

# -*- coding:utf-8 -*-class GrayCode:  def getGray(self, n):    # write code here    global maxn    maxn = n    return GrayCode.getGrace(self, ['0', '1'], 1)  def getGrace(self, list_grace, n):    global maxn    if n >= maxn:      return list_grace    list_befor, list_after = [], []    for i in xrange(len(list_grace)):      list_befor.append('0' + list_grace[i])      list_after.append('1' + list_grace[-(i + 1)])    return GrayCode.getGrace(self, list_befor + list_after, n + 1)gary = GrayCode()print "武林站長站測試結(jié)果:"print gary.getGray(3)

運(yùn)行結(jié)果:

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python字符串操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設(shè)計(jì)有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 望都县| 靖安县| 彩票| 会泽县| 依安县| 木兰县| 万安县| 余庆县| 舟曲县| 启东市| 亳州市| 惠安县| 房产| 新巴尔虎左旗| 靖宇县| 精河县| 贺州市| 高密市| 民勤县| 江西省| 东兰县| 蓝田县| 抚顺市| 苍山县| 资阳市| 芦溪县| 龙州县| 增城市| 巴中市| 同江市| 博客| 大丰市| 隆尧县| 革吉县| 赤水市| 尉氏县| 柳州市| 丹巴县| 博兴县| 和政县| 新蔡县|