python常用的查找算法

常用算法

1、二分法

也成为折半查找,它是一种效率较高的查找方法。

限制:

  • 必须是有序存储结构
  • 内容必须按大小有序排序

代码实现:

# coding: utf-8


def binary_search(list_args, val):
    low = 0
    high = len(list1) - 1
    while low <= high:
        mid = (low + high) / 2
        if list_args[mid] == val:
            return mid
        elif list_args[mid] > val:
            high = mid - 1
        else:
            low = mid + 1
    return -1


if __name__ == '__main__':

    list1 = [1, 3, 2, 7, 8, 9, 5]
    list1.sort()  # 正序排列

    result = binary_search(list1, 5)
    if result != -1:
        print "存在"
    else:
        print "不存在"

2、冒泡排序

待补充

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 查找和排序都是程序设计中经常用到的算法。查找相对而言较为简单,不外乎顺序查找、二分查找、哈希表查找和二叉排序树查找...
    eagleRock阅读 5,613评论 0 14
  • 一些概念 数据结构就是研究数据的逻辑结构和物理结构以及它们之间相互关系,并对这种结构定义相应的运算,而且确保经过这...
    Winterfell_Z阅读 5,975评论 0 13
  • 排序的基本概念 在计算机程序开发过程中,经常需要一组数据元素(或记录)按某个关键字进行排序,排序完成的序列可用于快...
    Jack921阅读 1,460评论 1 4
  • 珍惜青春,愿你们不负大好时光。 ——东叔 01 早上六点的闹钟在清晨的寂静里格外刺耳,室友们翻了翻身,捂紧了身上的...
    微语东来阅读 301评论 0 2
  • 收起匆匆的脚步 让我在十二月 多徘徊一会儿 一不小心又到了年终 那十一个月 怎么一下子就挥霍了呢 也认真看了几次日...
    张一冉阅读 262评论 0 6