python--栈-数据结构-用栈做2进制转换

Python 代码实现了 “除 2” 算法,函数 divideBy2 传入了一个十进制的参
数,并重复除以 2。第 7 行使用内置的模运算符 % 来提取余数,第 8 行将余数压到栈上。当
除到 0 后,11-13 行构造了一个二进制字符串。

from pythonds.basic.stack import Stack


def divideBy2(decNumber):
remstack = Stack()

while decNumber > 0:
rem = decNumber % 2 # (取余数)
remstack.push(rem)
decNumber = decNumber // 2 #(取整)

binString = ""
while not remstack.isEmpty():
binString = binString + str(remstack.pop())
return binString

print(divideBy2(255))

# 11111111
原文地址:https://www.cnblogs.com/Jin-Yu/p/13668110.html