问题标签 [bsearch]

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 投票
3 回答
485 浏览

c - 调用 lfind 时来自整数的指针,不带强制转换警告

我正在用 C 编写一个向量。如果已排序,则 CVectorSearch 函数使用 bsearch,如果未排序,则使用 lfind。为什么我在调用 lfind 时会收到警告“赋值从整数中生成指针而不进行强制转换”?即使在使用 lfind 时,它似乎也能正常工作。

编辑: 现在我已经包含了 search.h 我得到了:

不过,该程序仍然可以正常工作。

0 投票
2 回答
266 浏览

c - 为什么调用 bsearch() 会使呈现的程序崩溃?

我有一个名为“dict.txt”的未排序字典文件。我已经设法将文件中的单词放在一个数组中,并且我使用的 qsort() 似乎也可以正常工作(也就是说,数组已排序)。

当我调用 bsearch() 时出现问题,程序崩溃,我的问题是:

为什么会这样?

我使用 gcc 进行编译并且不使用任何类型的 IDE,因此我没有任何调试器,也不知道如何使用(还)。

我很清楚这里提供的代码可能包含几个问题。

那是因为我对 c 很陌生,而且我的背景主要是 Java(尽管有相似之处,这似乎是一个缺点,因为我已经习惯了 OO 而 c 显然不是 OO)。

任何建议将不胜感激。

0 投票
3 回答
2813 浏览

implementation - 标准 C 库中的 bsearch() 函数是如何实现的?

有谁知道标准的二分查找功能是如何实现的?

这是原型。

我真的很好奇他们如何使用 void 指针。

0 投票
1 回答
2786 浏览

c - c中的bsearch函数

如果我有两个功能:

使用 qsort 函数进行排序和比较,如何使用 bsearch 查找列表的子集。例如,如果我有两个列表:

  • (列表 A)鲍勃、吉米、李、詹姆斯、安妮
  • (名单 B)Jen、Jon、Lee、James、Steph

如何在列表 B 中搜索以找到 A 中的那些元素?

您还可以在列表 B 中进行搜索以找到不在 A 中的元素吗?

谢谢。

0 投票
1 回答
689 浏览

c - 使用 qsort、bsearch 帮助 C 中的指针

我在使用某些指针/数组表示法时遇到问题。我有两个列表并正在对它们进行排序,然后尝试显示它们。关于声明是什么以及为什么,我在下面的代码中有 3 条评论。我的代码如下所示:

0 投票
5 回答
386 浏览

c++ - 如何找到我的 C++ 类的实际大小?

我正在做一个家庭作业,我需要使用 char 数组而不是字符串和 qsort/bsearch。在下面对 bsearch 的调用中,我知道我传递了错误的 Entry 大小,但我不确定如何获得实际大小,因此我的 compareEntries 函数找不到正确的对象。

谁能帮我理解我错过了什么?

0 投票
4 回答
384 浏览

c++ - 在 bsearch() 中自定义比较

我有一个指向整数的地址数组(这些整数按升序排序)。它们有重复的值。例如:1、2、2、3、3、3、3、4、4……

我正在尝试获取所有大于某个值(键)的值。目前正在尝试使用二进制搜索算法来实现它 -

我无法完全做到这一点,但对于其中一些人来说。

在不改变我正在使用的算法的情况下,还有其他方法可以获取数组的所有值吗?

0 投票
3 回答
4620 浏览

php - in_array() 是否使用二进制搜索算法?

我有一个较大的字符串数组,我想用作查找。

我正在使用in_array(),但我怀疑它做了一个简单的循环 - 有谁知道in_array()算法是否使用 bsearch 算法?

0 投票
2 回答
101 浏览

c - 类似于 stdlib bsearch 的东西,它立即返回更小的元素

是否有类似于内置 bsearch 的东西,如果相同的元素不存在,则返回立即较小的元素,仅当元素已经小于所有其他元素时返回 NULL。这将要求用户检查返回值的键是否与函数参数相同,但它本身就非常有用。谢谢。

0 投票
2 回答
500 浏览

c - bsearch 和搜索范围?

bsearch 非常适合直接搜索,但是如果我需要例如搜索范围,我应该使用什么?

更新

例如,如果我想查找 a 和 b 之间的值范围( a >= x < b )。

更新

范围值可以不相等。所以如果我有数组(10,20,30)并且我试图找到“15”,我想获得地址(指针)到最接近的最小范围,在这个例子中这是范围(10,20)