美文网首页
2018-05-31

2018-05-31

作者: 木马音响积木 | 来源:发表于2018-05-31 23:13 被阅读0次

    算法导论 116页 ,8-7 ,突然想到一点改进

    # Hello World program in Python
    print "Hello World!\n"
    
    def comp(A,i,j):
        print 'baba'
        if A[i]>A[j]:
            A[i],A[j]=A[j],A[i]
            
    def insertt(A):
        for j in range(1,len(A)):
            #for j in range(i, len(alist), 1):
            for i in range(j-1, 0, -1):
                #youhua 
                if A[i]<=A[i+1]:
                    print 'less time'
                    break
                #else:
                comp(A,i,i+1)
                #A[i],A[i+1]=A[i+1],A[i]
                
    aa =[1,77,81,3,4,45,67,89,99,56,44,33]
    insertt(aa)
    print aa
    
    

    注意,break 上面的三行,能减少不必要的循环,但是,要知道,这还不如,算法导论第10页的代码。
    ---修改以后的代码,就是画蛇添足,所以,一定要小心。--2018-6-15

    $python main.py
    Hello World!
    
    less time
    baba
    baba
    baba
    baba
    less time
    baba
    baba
    less time
    baba
    baba
    less time
    less time
    less time
    baba
    baba
    baba
    baba
    baba
    less time
    baba
    baba
    baba
    baba
    baba
    baba
    baba
    less time
    baba
    baba
    baba
    baba
    baba
    baba
    baba
    baba
    less time
    [1, 3, 4, 33, 44, 45, 56, 67, 77, 81, 89, 99]
    

    相关文章

      网友评论

          本文标题:2018-05-31

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