アプリケーションのスタック(バイナリ変換)

クラススタック:
     DEF  __init__ (自己):
        self.items = []
     DEF のisEmpty(自己):
         戻り self.items == []
     DEF 押す(セルフ、アイテム):
        添加元素停止
        self.items.append(アイテム)
     DEF PEEK(自己):
         #1 印刷トップ要素
        戻り self.items [LEN(self.items)-1 ]
     DEF POP(自己):
        、スタックからの要素削除
        戻りself.items.popを()
     DEFのサイズ(自己) :
         スタック内の要素の数を返し
        、戻りLENを(self.items)
#使用Python自带库
def divideByBase(decNumber,base):
    #进制转换,base代表进制
    remstack=Stack()
    digits="0123456789ABCDEF"
    #十六进制数
    while decNumber>0:
        rem=decNumber%base
        #取余
        remstack.push(rem)
        decNumber=decNumber//base
        #做除法取商,再次取余

    binString=""
    while not remstack.isEmpty():
        binString=binString+digits[remstack.pop()]
    return binString

print(divideByBase(1783,16))
View Code

 

おすすめ

転載: www.cnblogs.com/jzxs/p/11090384.html