问题标签 [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.
c - 使用 bsearch c 在字符串数组中进行二进制搜索
所以我试图在一个名为 conj_str 的字符串数组中进行二进制搜索,要做的是我必须对其进行排序,而我试图使用 qsort 的问题是比较函数不起作用并且它没有排序任何东西。
程序:
c - 使用 bsearch 在结构数组中查找元素
所以我有一个名为 conj_gms 的结构数组,我想找到一个特定jogo
的nome
.
结构:
例如,我有 jogo 和
在 conj_jogs 的索引 1 处,如果我搜索字符串 UCL,在使用 bsearch 之后,我想要具有该名称的 jogo 的 id,即 1。
所以为此我创建了一个函数来创建一个 jogo 并将它们归因于 conj_jgs 中的位置。
问题是当我使用 bsearch 我得到一个分段错误
程序:
ruby - bsearch_index 的奇怪行为
在上面的代码中,我得到的响应为零。如果我将 j 与 3 或 5 进行比较,它会起作用。为什么 bsearch_index 不考虑第一个元素?
ruby - 如果 0 索引值是满足条件的唯一值,则 Ruby 中的 Array#bsearch 返回 nil
我在下面提供了测试用例,这只是一个激发我好奇心的问题。
ruby 文档Array#bsearch
说:
“此方法返回第 i 个元素。如果 i 等于 ary.size,则返回 nil。”
这个解释还没有在我的脑海中点击。有人可以更深入地解释一下吗?
c - 可以对数组进行排序以使 bsearch 工作吗?
从这个链接
因为这个函数可能被优化为使用非线性搜索算法(可能是二分搜索),所以使用比较小于键的元素应该在比较相等的元素之前,而这些应该在比较大的元素之前。使用与比较使用的相同标准排序的任何数组都满足此要求(就像使用 qsort 排序一样)。
- 在引用的文本中,斜体部分是什么意思?
- 另外,我可以订购数组后代吗?还是只有上升?
- 被排序的数组中的元素还能是什么顺序呢?
c - bsearch 的比较回调函数只需要实现相等吗?
从 cppreference,
为了执行搜索,该函数执行一系列调用以比较 key 作为第一个参数,并将 base 指向的数组元素作为第二个参数。
对于给定的数组int arr[] = {1, 2, 3, 4, 5, 6, 7}
,搜索6
需要将回调函数传递给的元素bsearch
。我的int compar (const void* pkey, const void* pelem);
函数是否需要能够返回以下三种情况之一:
- 返回 < 0
- 返回 > 0
- 返回 0
还是仅仅为了相等而实现compar
函数就足够了(例如,当搜索值等于当前元素时返回 0)?
c - bsearch 的不同比较函数
cmp func 似乎都可以工作;无法理解在 qsort_cmp 的情况下如何解析 int* 类型的 arg1。据我所知:int* 被传递给 qsort_cmp ,在那里它被更改为 void*,然后在 return 语句中转换为 struct s*。到目前为止没问题,但是演员应该有一个名为 b 的成员,它的演员类型有,但它的实例没有......
c - 在 C 中努力实现 bsearch
我有一个数组
我试图获取匹配的条目的索引 pseq = (char*)malloc(2);
我现在只是使用一个基本的比较功能,因为我希望以后创建一个特定的
我对 bsearch 的尝试是:
char* q = bsearch(&pseq, m, mlen, sizeof(m[0]), compare);
但是,每个返回都是 NULL。但是compare(pseq, m[5]) = 0
对于 pseq = "CC"
arrays - bsearch 与结构数组
我有一个结构数组,已经使用qsort
. 我正在尝试在 struct 中搜索名称,但它总是返回NULL
。为什么会发生这种情况的解释是什么?
这是我的代码:
这是我声明的结构:
arrays - (C) 使用 bsearch 在 struct 数组中按名称查找 struct
我正在尝试实现函数 (1) 以在结构数组中按名称查找特定产品。p_array 是包含 n 个产品的结构数组,search_key 是指向具有搜索结构名称的字符串的指针 cmp 是指向我已实现的另一个函数 (2) 的指针。
我有以下问题:
- 我想不出办法找出 p_array 的长度
- 启动程序导致分段错误,我不知道为什么
我的主要功能是:
想要的输出是