• Algorithms


      1 Insertion Sort - 插入排序
      2     插入排序算法的 '时间复杂度' 是输入规模的二次函数, 深度抽象后表示为, n 的二次方.
      3 
      4 import time, random
      5 F = 0
      6 alist = []
      7 while F < 13:
      8     F += 1
      9     alist.append(random.randrange(0,100))
     10 j =1
     11 print("List-O",alist)
     12 startT =time.time()
     13 while j < alist.__len__():
     14     factor = alist[j]
     15     j += 1
     16     print("-",factor)
     17     i = j -1
     18     while i > 0:
     19         i -= 1
     20         if alist[i] > factor:
     21             alist[i],alist[i+1] = alist[i+1],alist[i]
     22         print("Steps", alist)
     23 endT = time.time()
     24 print("List-S", alist)
     25 print("Time elapsed :", endT - startT)
     26 
     27 Output,
     28 List-O [67, 22, 94, 33, 81, 92, 65, 94, 56, 10, 55, 5, 64]
     29 - 22
     30 Steps [22, 67, 94, 33, 81, 92, 65, 94, 56, 10, 55, 5, 64]
     31 - 94
     32 Steps [22, 67, 94, 33, 81, 92, 65, 94, 56, 10, 55, 5, 64]
     33 Steps [22, 67, 94, 33, 81, 92, 65, 94, 56, 10, 55, 5, 64]
     34 - 33
     35 Steps [22, 67, 33, 94, 81, 92, 65, 94, 56, 10, 55, 5, 64]
     36 Steps [22, 33, 67, 94, 81, 92, 65, 94, 56, 10, 55, 5, 64]
     37 Steps [22, 33, 67, 94, 81, 92, 65, 94, 56, 10, 55, 5, 64]
     38 - 81
     39 Steps [22, 33, 67, 81, 94, 92, 65, 94, 56, 10, 55, 5, 64]
     40 Steps [22, 33, 67, 81, 94, 92, 65, 94, 56, 10, 55, 5, 64]
     41 Steps [22, 33, 67, 81, 94, 92, 65, 94, 56, 10, 55, 5, 64]
     42 Steps [22, 33, 67, 81, 94, 92, 65, 94, 56, 10, 55, 5, 64]
     43 - 92
     44 Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
     45 Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
     46 Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
     47 Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
     48 Steps [22, 33, 67, 81, 92, 94, 65, 94, 56, 10, 55, 5, 64]
     49 - 65
     50 Steps [22, 33, 67, 81, 92, 65, 94, 94, 56, 10, 55, 5, 64]
     51 Steps [22, 33, 67, 81, 65, 92, 94, 94, 56, 10, 55, 5, 64]
     52 Steps [22, 33, 67, 65, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     53 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     54 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     55 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     56 - 94
     57 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     58 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     59 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     60 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     61 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     62 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     63 Steps [22, 33, 65, 67, 81, 92, 94, 94, 56, 10, 55, 5, 64]
     64 - 56
     65 Steps [22, 33, 65, 67, 81, 92, 94, 56, 94, 10, 55, 5, 64]
     66 Steps [22, 33, 65, 67, 81, 92, 56, 94, 94, 10, 55, 5, 64]
     67 Steps [22, 33, 65, 67, 81, 56, 92, 94, 94, 10, 55, 5, 64]
     68 Steps [22, 33, 65, 67, 56, 81, 92, 94, 94, 10, 55, 5, 64]
     69 Steps [22, 33, 65, 56, 67, 81, 92, 94, 94, 10, 55, 5, 64]
     70 Steps [22, 33, 56, 65, 67, 81, 92, 94, 94, 10, 55, 5, 64]
     71 Steps [22, 33, 56, 65, 67, 81, 92, 94, 94, 10, 55, 5, 64]
     72 Steps [22, 33, 56, 65, 67, 81, 92, 94, 94, 10, 55, 5, 64]
     73 - 10
     74 Steps [22, 33, 56, 65, 67, 81, 92, 94, 10, 94, 55, 5, 64]
     75 Steps [22, 33, 56, 65, 67, 81, 92, 10, 94, 94, 55, 5, 64]
     76 Steps [22, 33, 56, 65, 67, 81, 10, 92, 94, 94, 55, 5, 64]
     77 Steps [22, 33, 56, 65, 67, 10, 81, 92, 94, 94, 55, 5, 64]
     78 Steps [22, 33, 56, 65, 10, 67, 81, 92, 94, 94, 55, 5, 64]
     79 Steps [22, 33, 56, 10, 65, 67, 81, 92, 94, 94, 55, 5, 64]
     80 Steps [22, 33, 10, 56, 65, 67, 81, 92, 94, 94, 55, 5, 64]
     81 Steps [22, 10, 33, 56, 65, 67, 81, 92, 94, 94, 55, 5, 64]
     82 Steps [10, 22, 33, 56, 65, 67, 81, 92, 94, 94, 55, 5, 64]
     83 - 55
     84 Steps [10, 22, 33, 56, 65, 67, 81, 92, 94, 55, 94, 5, 64]
     85 Steps [10, 22, 33, 56, 65, 67, 81, 92, 55, 94, 94, 5, 64]
     86 Steps [10, 22, 33, 56, 65, 67, 81, 55, 92, 94, 94, 5, 64]
     87 Steps [10, 22, 33, 56, 65, 67, 55, 81, 92, 94, 94, 5, 64]
     88 Steps [10, 22, 33, 56, 65, 55, 67, 81, 92, 94, 94, 5, 64]
     89 Steps [10, 22, 33, 56, 55, 65, 67, 81, 92, 94, 94, 5, 64]
     90 Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 5, 64]
     91 Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 5, 64]
     92 Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 5, 64]
     93 Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 5, 64]
     94 - 5
     95 Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 5, 94, 64]
     96 Steps [10, 22, 33, 55, 56, 65, 67, 81, 92, 5, 94, 94, 64]
     97 Steps [10, 22, 33, 55, 56, 65, 67, 81, 5, 92, 94, 94, 64]
     98 Steps [10, 22, 33, 55, 56, 65, 67, 5, 81, 92, 94, 94, 64]
     99 Steps [10, 22, 33, 55, 56, 65, 5, 67, 81, 92, 94, 94, 64]
    100 Steps [10, 22, 33, 55, 56, 5, 65, 67, 81, 92, 94, 94, 64]
    101 Steps [10, 22, 33, 55, 5, 56, 65, 67, 81, 92, 94, 94, 64]
    102 Steps [10, 22, 33, 5, 55, 56, 65, 67, 81, 92, 94, 94, 64]
    103 Steps [10, 22, 5, 33, 55, 56, 65, 67, 81, 92, 94, 94, 64]
    104 Steps [10, 5, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 64]
    105 Steps [5, 10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 94, 64]
    106 - 64
    107 Steps [5, 10, 22, 33, 55, 56, 65, 67, 81, 92, 94, 64, 94]
    108 Steps [5, 10, 22, 33, 55, 56, 65, 67, 81, 92, 64, 94, 94]
    109 Steps [5, 10, 22, 33, 55, 56, 65, 67, 81, 64, 92, 94, 94]
    110 Steps [5, 10, 22, 33, 55, 56, 65, 67, 64, 81, 92, 94, 94]
    111 Steps [5, 10, 22, 33, 55, 56, 65, 64, 67, 81, 92, 94, 94]
    112 Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
    113 Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
    114 Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
    115 Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
    116 Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
    117 Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
    118 Steps [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
    119 List-S [5, 10, 22, 33, 55, 56, 64, 65, 67, 81, 92, 94, 94]
    120 Time elapsed : 0.015672683715820312
    121     
  • 相关阅读:
    轻松搭建Redis缓存高可用集群
    Redis集群主从配置
    启动Redis Cluster
    MyISAM 和 InnoDB 索引的区别
    数据库面试
    如何定位php程序访问慢
    Socket技术详解
    NGINX快速入门
    nginx 并发数问题思考:worker_connections,worker_processes与 max clients
    php-fpm运行原理
  • 原文地址:https://www.cnblogs.com/zzyzz/p/8418675.html
Copyright © 2020-2023  润新知