zoukankan      html  css  js  c++  java
  • Python模拟人猜数过程(折半查找)

    import random
    # (0,1000)随机产生一个数
    key = random.randint(1,1000)
    # 用来统计猜的次数
    count = 0

    # 定义一个折半查找的函数
    def BinSearch(array, key, low, high):
    global count
    mid = int((low+high)/2)
    if key == array[mid]: # 若找到
    count += 1
    print("您总共猜了次数是:%d"%count)
    print("恭喜您猜对了,答案是:" )
    return array[mid]
    if low > high:
    return False

    if key < array[mid]:
    print("小于猜的数")
    count += 1
    return BinSearch(array, key, low, mid-1) #递归
    if key > array[mid]:
    count += 1
    print("大于猜的数")
    return BinSearch(array, key, mid+1, high)



    if __name__ == "__main__":
    # 给定一个列表
    num_value_list = list(range(1, 1001))
    # 通过折半查找,找到随机的数
    ret = BinSearch(num_value_list, key, 0, len(num_value_list)-1)
    print(ret)
  • 相关阅读:
    Git 常用命令集合
    PHP CURL
    Helm安装Dashboard
    使用helm 部署Nginx
    Helm v3部署和使用
    K8s
    Linux
    CentOS下 Docker、Docker Compose 的安装教程(附详细步骤)
    Passwordless SSH Login
    秒杀业务的设计
  • 原文地址:https://www.cnblogs.com/yunlongaimeng/p/8835109.html
Copyright © 2011-2022 走看看