li=[2,3,12,4,23,13,11]
# 冒泡排序
def bubble_sort(alist):

    n =len(alist)

    for j in range(n-1):

        count=0

        for i in range(n-1-j):

            if alist[i]>alist[i+1]:

                alist[i],alist[i+1] = alist[i+1],alist[i]

                count+=1

        if count==0:
            return

# 快排

def quit_sort(alist,first,last):

    # 递归的终止条件

    if first>=last:

        return

    #定义一个中间值

    mid_value = alist[first]

    #  两个游标
    low = first

    high = last
    #
    while low<high:

        while low < high and alist[low] < mid_value:
            # low一直向右走
            low += 1
            # 退出循环表示 alist[low]>mid_value
            # 把最大 值
        alist[high] = alist[low]

        while low<high and alist[high]>=mid_value:
            high-=1
        # 退出循环
        alist[low] = alist[high]


    # 将中间值放在中间位置

    alist[low] = mid_value

    quit_sort(alist,first,low-1)

    quit_sort(alist,low+1,last)


quit_sort(li,0,len(li)-1)

print(li)

#  二分查找
# 前提为有序列表
li=[1,2,3,5,6,78,90,341,547]

num=int(input("请输入一个数"))

def er_find(li,n):
    left = 0
    right = len(li) - 1
    while left<=right:
        mid=(left+right)//2
        if li[mid]>n:
            right=mid-1
        elif li[mid]<n:
            left=mid+1
        else:
            return True

    else:
        return False

print(er_find(li,num))

优质内容筛选与推荐>>
1、项目管理中的五个过程组和九大知识领域
2、php-新特性,生成器的创建和使用
3、Tomcat使用积累(二)
4、[UOJ #140]【UER #4】被粉碎的数字
5、Response.Write 与 Page.ClientScript.RegisterStartupScript 与 Page.ClientScript.RegisterClientScriptBlock 之间的区别


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号