Python 输出斐波纳挈数列详解编程语言

    #coding:utf8     
         
    import time   
    import os   
         
    global_list = []     
       
    def test1(n):   
        if n==1 or n==2:     
            return 1     
        else:     
            return test1(n-1) + test1(n-2)     
              
    def test2(n):     
        global global_list     
        if n==1 or n==2:     
            return 1     
        else:     
            temp = test2(n-1) + test2(n-2)     
            if isinstance(temp,int):     
                global_list.append(temp)     
            return temp     
         
    def main():     
        global global_list     
        input_int = raw_input("Entry your number:")   
        length = int(input_int)   
        #第一种方法   
        start = time.clock()   
        for i in xrange(length):   
            print test1(i+1   
                        ),   
        end = time.clock()   
        print os.linesep + "处理耗时:%f s"%(end-start)   
        #第二种方法   
        start = time.clock()     
        test2(length)     
        temp_set = set(global_list)     
        global_list = [i for i in temp_set]     
        global_list.sort(reverse=True)     
        global_list.extend([1,1])     
        for i in global_list[::-1]:     
            print i,   
        end = time.clock()   
        print os.linesep + "处理耗时:%f s"%(end-start)   
         
    if __name__ == "__main__":     
        main()  

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/8406.html

(0)
上一篇 2021年7月18日
下一篇 2021年7月18日

相关推荐

发表回复

登录后才能评论