国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 吕梁市| 佛坪县| 永安市| 塘沽区| 读书| 岳阳市| 金门县| 亚东县| 天峻县| 察隅县| 庆元县| 阿拉善左旗| 平原县| 微山县| 深泽县| 洛南县| 社旗县| 巢湖市| 金门县| 西畴县| 界首市| 阿图什市| 石台县| 威远县| 枣阳市| 垦利县| 三原县| 辽中县| 晋江市| 定远县| 长岭县| 淮安市| 蕲春县| 淮安市| 库尔勒市| 昌宁县| 舟山市| 桃园市| 涡阳县| 上蔡县| 绵阳市|