问题标签 [binary-search]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
811 浏览

search - 使用二分搜索获取一系列对象

我有一些这样的数据:

它们是对象(不是纯文本)。
我想获取 ID = 2 的所有对象。
我可以进行二进制二进制搜索并获取索引 3,但是我怎样才能得到(2 和 4)有没有有效的算法?
真正的问题是包含大约一百万个项目的列表。

除了 bf 和 lisp 之外的任何语言都可以提供帮助。

0 投票
3 回答
159 浏览

c - 什么是在 C 中对各种类别的整数进行分箱/映射的优雅方法?

假设我们有一个整数“x”和“n”个可能的值,“x”可以映射/合并到。什么是 C 中的一种优雅方式,可以让函数返回最接近 x 的“第 n 个”值?

伪代码示例;

优雅我的意思不仅仅是一堆 if/else if/else 语句。

0 投票
1 回答
217 浏览

c# - 已恢复文件的文件夹缺少名称 - 如何通过文件内容找到我要查找的文件?

我设法意外删除了我后来恢复的文件备份。恢复过程丢失了文件名和位置,剩下大约 3000 多个 .indd (Adobeb InDesign) 文件。

我的问题是我试图找到我正在处理的 .indd 文件,而不必手动打开每个文件进行检查。

我知道我拥有的一些单词,我想知道是否可以使用二进制阅读器来读取 .indd 文件,以查找其中一个关键字……我可以用 c# 或其他方式构建它

有人有什么想法吗?

0 投票
5 回答
2004 浏览

algorithm - 给定一个排序的数字数组,我如何找到小于 x 的数字的大小

可能重复:
在 BST 中找到所有小于 x 的数字

如何修改二进制搜索以查找排序数组中小于某个数字的数字数量?

0 投票
1 回答
2100 浏览

c# - 不精确二分搜索:给定一个值,找到元素位置的上下索引

我有一个List<KeyValuePair<double, double>>列表按 排序KeyValuePair.Key,因此可以修改为二进制搜索。我有一个double对象。现在,我的任务是找到double对象的索引。以下是适用的条件:

  1. 如果该double对象与KeyValuePair.Key指定容差中的一个匹配,KeyValuePair.Value则应返回对应的对象。
  2. 如果double对象超出 的最大和最小范围KeyValuePair.Key,则应返回 0。
  3. 如果double对象落在 的最大最小值范围内KeyValuePair.Key,但与指定容差内的任何一个都不匹配KeyValuePair.Key,则获取最近的上限和最近的下限KeyValuePair.Value(由 测量KeyValuePair.Key)的平均值。

我知道在 C# 中可以使用二进制搜索实现,但它并不完全适合我的需要。我想问一下是否有任何实现已经满足我的需求?我不想花几个小时编写和调试其他人已经编写、调试和完善的代码。

0 投票
3 回答
262 浏览

c# - 在 .NET/C# 上下文中,什么是二分搜索以及如何/为什么要使用二分搜索?

我今天第一次在 Wikipedia 上阅读了二进制搜索,只是略略略过表面。它似乎用于在内存稀疏的集合中快速查找项目。

在 .NET/C# 上下文中,我是否需要使用一个?您是否曾经在构建生产型真实世界软件时使用它们?

如果这个问题被认为是煽动性的,我很抱歉,但我作为学生提出了一个真正的问题!

0 投票
9 回答
10483 浏览

c# - 为什么会有列表.BinarySearch(...)?

我正在查看 List 并且看到一个带有一些重载的 BinarySearch 方法,我不禁想知道在 List 中使用这样的方法是否有意义?

除非列表已排序,否则我为什么要进行二进制搜索?如果列表没有排序,调用该方法只会浪费 CPU 时间。在 List 上使用该方法有什么意义?

0 投票
2 回答
790 浏览

algorithm - 不确定长度的数组

如何在未知长度的排序数组中找到随机元素。

0 投票
1 回答
3024 浏览

java - 在未排序的字符串数组中搜索

我有这个字符串数组

然后我有这个方法

当我打电话getColorByString("#ff8581");给我-13的结果。

如果我理解得很好,这意味着该元素不包含在我的数组中。

我究竟做错了什么?我怎样才能让它工作?

编辑

我刚刚意识到必须对数组进行排序。问题是我无法对其进行排序,因为我需要将字符串映射到特定索引。

所以现在问题变成了,是否有任何方法可以执行线性搜索,还是我必须编写它?

0 投票
2 回答
770 浏览

c# - 使用 Array.BinarySearch() 返回第一个值 <= 查找值?

我正在尝试创建一个“查找”列,该列将返回等于或小于正在查找的值的数组值的索引。所以这是我的尝试,它似乎工作正常,但我想知道是否有更清洁的方法?

谢谢。