zoukankan      html  css  js  c++  java
  • python-二分法

    二分法适用于对大数据进行查找
    例如:

    def find(list1,finded):
    middle=int(len(list1)/2)
    if len(list1)>=1:
    if finded>list1[middle]:
    list1[middle:]
    print(list1[middle:])
    find(list1[middle:],finded)
    if finded<list1[middle]:
    list1[:middle]
    print(list1[:middle])
    find(list1[:middle], finded)
    if finded==list1[middle]:
    print(list1[middle])
    else:
    print('未找到!')
    return
    if __name__=='__main__':
    a=list(range(1,600,3))
    find(a,400)

    结果:

    [301, 304, 307, 310, 313, 316, 319, 322, 325, 328, 331, 334, 337, 340, 343, 346, 349, 352, 355, 358, 361, 364, 367, 370, 373, 376, 379, 382, 385, 388, 391, 394, 397, 400, 403, 406, 409, 412, 415, 418, 421, 424, 427, 430, 433, 436, 439, 442, 445, 448, 451, 454, 457, 460, 463, 466, 469, 472, 475, 478, 481, 484, 487, 490, 493, 496, 499, 502, 505, 508, 511, 514, 517, 520, 523, 526, 529, 532, 535, 538, 541, 544, 547, 550, 553, 556, 559, 562, 565, 568, 571, 574, 577, 580, 583, 586, 589, 592, 595, 598]
    [301, 304, 307, 310, 313, 316, 319, 322, 325, 328, 331, 334, 337, 340, 343, 346, 349, 352, 355, 358, 361, 364, 367, 370, 373, 376, 379, 382, 385, 388, 391, 394, 397, 400, 403, 406, 409, 412, 415, 418, 421, 424, 427, 430, 433, 436, 439, 442, 445, 448]
    [376, 379, 382, 385, 388, 391, 394, 397, 400, 403, 406, 409, 412, 415, 418, 421, 424, 427, 430, 433, 436, 439, 442, 445, 448]
    [376, 379, 382, 385, 388, 391, 394, 397, 400, 403, 406, 409]
    [394, 397, 400, 403, 406, 409]
    [394, 397, 400]
    [397, 400]
    400

     
  • 相关阅读:
    第五次作业
    第四次作业
    第三次作业
    第二次作业
    2013551822第一次作业
    第八次作业
    第七次作业
    第六次作业
    第五次作业
    第四次作业
  • 原文地址:https://www.cnblogs.com/zhangyuxin/p/6273331.html
Copyright © 2011-2022 走看看