搜索算法

  • 最后更新:2020年9月17日,

“最近的文章”搜索

搜索算法用于检查元素或从存储元素的任何数据结构中检索元素。根据搜索操作的类型,这些算法一般分为两类:

  1. 顺序搜索:在这种方法中,顺序遍历列表或数组,并检查每个元素。例如:线性搜索
  2. 区间搜索:这些算法是专门为搜索排序数据结构而设计的。这些类型的搜索算法比线性搜索更有效,因为它们重复地瞄准搜索结构的中心,并将搜索空间一分为二。例如:二分查找


线性搜索在给定的数字列表中找到元素“20”

二进制搜索以在给定的数字列表中查找元素“23”

话题 :

搜索算法:

比较:



搜索算法的图书馆实现:

编码问题:

  1. 找到缺少的号码
  2. 在排序和旋转数组中搜索一个元素
  3. 两个排序数组的中位数
  4. 两个元素最接近零
  5. 在数组中查找最小和第二个最小元素
  6. 使用最小比较数量的阵列的最大值和最小值
  7. 数组|中的k个最大(或最小)元素添加了最小堆方法
  8. 排序阵列的天花板
  9. 计数排序阵列中的出现数量(或频率)
  10. 添加了3个新方法
  11. 在给定数组中找到一个固定点
  12. 找出数组中先增后减的最大元素
  13. 找一个有已知差值的配对
  14. 找到文件中最常见的单词
  15. 两个不同大小的排序数组的中位数
  16. 找到峰值元素
  17. 给定一个大小为n,数为k的数组,找出所有出现次数大于n/k的元素
  18. 找到排序和旋转数组中的最小元素
  19. 章节中的kth最小元素和列明智的2d阵列|设置1
  20. 找到最接近的元素到给定值
  21. 以几乎排序的数组搜索
  22. 许多二进制搜索实现中的问题
  23. 在整数数组中找到第一个重复元素
  24. 在三个排序阵列中查找常见元素
  25. 在二进制数组中计数1
  26. 给定一个排序数组和一个数字x,找出数组中和最接近x的对
  27. 从两个排序阵列中找到最接近的对
  28. 未排序阵列中的k'th最小/最大元素|设置1
  29. 无序数组|集合2中K个最小/最大元素(期望线性时间)
  30. 未排序阵列中的k'th最小/最大元素|设置3(最坏情况线性时间)
  31. 查找一个元素在一个无限数排序数组中的位置
  32. 给定排序和旋转的阵列,找到是否有一个带给定和的对
  33. 找到一个未排序数组中的最大对和
  34. 在阵列中找到左侧最近的较小数字
  35. 溪流中的k'th最大元素
  36. 找到一个整数数组中乘积最大的一对
  37. 查找在排序数组中出现一次的元素
  38. 找到O(log n)时间的奇数出现元素
  39. 查找数组中最大的三个元素
  40. 搜索数组中相邻元素之差为1的元素
  41. 找到来自给定三个排序阵列的三个最近的元素
  42. 找到所有元素小于它的元素,以及所有元素都更大
  43. 二进制搜索有理数而不使用浮点算术
  44. 排序数组中的层
  45. 三个不同元素数组中的第三大元素
  46. 第二个最小元素使用最小比较
  47. 查询大于和不小于
  48. 在阵列中有效搜索,相邻的差异为1
  49. 用sum n打印所有可能的连续号码
  50. 生产M项所需的最短时间
  51. 使所有数组元素与最小成本相等
  52. 检查数组中是否存在两个元素,其总和等于数组的其余部分
  53. 检查是否反转子数组,使阵列排序
  54. 查找具有零和的所有三胞胎
  55. 在未排序数组中搜索、插入和删除
  56. 在排序数组中搜索、插入和删除
  57. 将元素的所有出现位置移动到链表的末尾
  58. 在某个字符串中搜索非空字符串的排序
  59. 三个阵列中最小的差异三重态
  60. 最佳首次查册(知情查册)

快速链接 :

  1. 关于搜索的练习题
  2. “测验”搜索

如果你喜欢Geeksfo188金宝搏滚球投注rGeeks,并愿意做出贡献,你也可以写一篇文章,并将文章发送到contribute@geeksforgeeks.org。金宝搏比分看到你的文章出现在GeeksforGeeks主页上,并帮助其他极客。188金宝搏滚球投注

如果你发现任何不正确的地方,或者你想分享关于上面讨论的话题的更多信息,请写评论




我的个人笔记 arrow_drop_up.