Python之 常用查询算法:最小项搜索、顺序搜索、二分搜索

数据库2025-11-05 06:33:0687

  最小项搜索

  def min_search(items):

Python之 常用查询算法:最小项搜索、顺序搜索、二分搜索

  """

  最小项搜索

  :param items:

  :return:

  """

  min_index = 0

  for i in range(len(items)):

  if items[min_index] > items[i]:

  min_index = i

  return min index: {}.format(min_index)

  顺序搜索

  def order_search(target,用查 items):

  """

  顺序搜索,常用遍历方法,询算小项 O(n)

  :param target:

  :param items:

  :return:

  """

  position = 0

  while position < len(items):

  if target == items[position]:

  return where index: {}.format(position)

  position += 1

  return 404 Not FOUND!:(

  二分(叉)搜索

  def binary_search(target, items):

  """

  二分查找(二叉搜索),云服务器提供商O(log2n)

  前置条件:列表已排好序

  :param target:

  :param items:

  :return: 无锡看妇科的免费源码下载法最分搜医院 http://www.ytsgfk120.com/

  """

  left = 0

  right = len(items) - 1

  while left <= right:

  middle = (left + right) // 2

  if target == items[middle]:

  return where index: {}.format(middle)

  elif target > items[middle]:

  left = middle + 1

  else:

  right = middle - 1

  return -1

  测试 main() 函数示例

  if __name__ == __main__:

  items1 = [1, 3, 6, 23, 0]

  min_search_res = min_search(items1)

  print(最小值索引:, min_search_res)

  items2 = [1, 3, 6, 23, 66]

  order_search = order_search(23, items2)

  print(顺序查找:, order_search)

  items3 = [1, 3, 6, 23, 66]

  search_res = binary_search(66, items3)

  print(二分查找:, search_res)

云南idc服务商
本文地址:http://www.bzuk.cn/news/671a39098938.html
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

全站热门

探索dostylesd805的风格魅力(发现dostylesd805独特设计与创新科技的奇妙融合)

如何让电脑不自动安装驱动程序的图文方法介绍

windows 7中安装IIS服务器的步骤分享

windows 7删除桌面右键菜单amd vision engine 选项的方法

iPhone精选照片添加流程(轻松记录生活中的美好瞬间)

Windows7系统技巧:windows 7便笺的快捷应用使用方法

windows 7删除桌面右键菜单amd vision engine 选项的方法

让程序在windows 7下始终以管理员身份运行的方法(图文教程)

友情链接

滇ICP备2023006006号-33