美文网首页工作生活
斐波那契数列(答辩面试题)

斐波那契数列(答辩面试题)

作者: 爱抽烟的臭屁虫 | 来源:发表于2019-07-04 19:17 被阅读0次

能使用数据,但不会使用太大空间

能够使用for循环,能够取里面的数据,但是不是生成序列的结果,而是方式,空间小。

classFibIterator(object):"""斐波那契数列迭代器"""def__init__(self, n):"""

        :param n: int, 指明生成数列的前n个数

        """self.n = n# current用来保存当前生成到数列中的第几个数了self.current =0# num1用来保存前前一个数,初始值为数列中的第一个数0self.num1 =0# num2用来保存前一个数,初始值为数列中的第二个数1self.num2 =1def__next__(self):"""被next()函数调用来获取下一个数"""ifself.current < self.n:            num = self.num1            self.num1, self.num2 = self.num2, self.num1+self.num2            self.current +=1returnnumelse:raiseStopIterationdef__iter__(self):"""迭代器的__iter__返回自身即可"""returnselfif__name__ =='__main__':    fib = FibIterator(10)fornuminfib:        print(num, end=" ")

相关文章

网友评论

    本文标题:斐波那契数列(答辩面试题)

    本文链接:https://www.haomeiwen.com/subject/zscdhctx.html