zoukankan      html  css  js  c++  java
  • 算法

     1. 时间复杂度.

     1. 列表查询 

     2. 顺序查找

     3. 二分查找: 

       特点是方法慢,需要是有序列表, 维护好一个后选区

     

    二分查找

    def binary_search(li,val):
        low =0
        high = len(li)-1
        while low <=high:
            mid =(low+high)//2
            if li[mid] ==val:
                return mid
            elif li[mid] <val :
                low =mid +1
            else :
                high =mid-1
    
    
        return None
    
    li =list(range(0,10000,3))
    print(binary_search(li,9))

    列表排序

     

      冒泡排序

    def bubble_sort(li):
        for i in range(len(li)-1):
            #第i趟
            for j in range(len(li)-i-1):
                #j 箭头位置
                if li[j]>li[j+1]:
                    li[j+1],li[j]=li[j],li[j+1]
    
    import  random
    li =list(range(10))
    random.shuffle(li)
    print(li)
    bubble_sort(li)
    print(li)
    

      打印结果:

    [7, 1, 4, 3, 2, 9, 6, 8, 5, 0]
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

      选择排序

      插入排序

     

  • 相关阅读:
    ORACLE表空间管理维护
    oracle表分区详解
    Jquery
    B
    A
    E
    字符串排成字典序,字符串数组
    命令,快捷键,配置
    第一个java程序
    A
  • 原文地址:https://www.cnblogs.com/mengbin0546/p/9629578.html
Copyright © 2011-2022 走看看