国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 丽江市| 广安市| 海晏县| 上林县| 阿克陶县| 凤阳县| 柳州市| 麻栗坡县| 淮北市| 芮城县| 启东市| 安阳市| 罗山县| 汉川市| 苏州市| 武清区| 商南县| 鄱阳县| 阿合奇县| 杭州市| 镇巴县| 荣成市| 石家庄市| 九龙县| 东乌| 绥中县| 万年县| 松阳县| 巴东县| 田东县| 康乐县| 灵武市| 呈贡县| 梓潼县| 昭通市| 搜索| 公主岭市| 渝北区| 沈丘县| 东源县| 仪陇县|