binary-search相关内容

如何在函数的子字符串中实现二进制搜索,并在比较器中实现两个值?

我有一个关于在子字符串中实现二进制搜索的问题.在我的City对象中,有一个cityName变量,定义为String.我想输入"Sha"之类的任何子字符串,它显示"Sha"的结果.除此之外,还有一个权重变量可对降落的城市名称进行排序.例如,较大的权重值位于顶部,而排序过程基于降序. 我该怎么做?如何将其添加到comparater区域? 这是我的城市对象 public class C ..
发布时间:2020-09-20 23:59:13 Java开发

二进制搜索代码

我正在为二进制搜索算法编写自己的函数,但似乎找不到逻辑上的差异.每当我搜索4时,它都不会返回理想的响应. 下面的代码: var list = [1,2,3,4,6,7,13,18,19]; function binarySearch(list,number) { var newList = list; while (newList.length >= 1) { ..
发布时间:2020-09-20 23:59:10 前端开发

确定二进制搜索的中间

我正在练习有关hackerearth的问题: 在这个问题中,我在使用的地方写了一个二进制搜索代码: int mid =(低+高)/2 我的循环卡在这里,因此在某些情况下我获得了TLE的称号. 意识到问题(反复选择低电压) 我将中值更改为低+(高-低+1)/2,并以此更改了整个测试用例 通过了. (代码1) 我也曾使用过(low + high)/2,并且通过了所有测试用例,也 ..
发布时间:2020-09-20 23:58:04 其他开发

如何对相同值的范围进行二进制搜索?

我有一个排序的数字列表,我需要让它返回该数字出现的索引范围.我的清单是: daysSick = [0, 0, 0, 0, 1, 2, 3, 3, 3, 4, 5, 5, 5, 6, 6, 11, 15, 24] 如果我搜索0,则需要返回(0,3).现在,我只能找到一个数字的位置!我知道如何执行二进制搜索,但是我仍然被困在如何使它从该位置上下移动以找到其他相同值的过程中! low = ..
发布时间:2020-09-20 23:57:57 Python

卡在Java赋值,二进制搜索算法上

我已经在任务上达到了这一点,我希望能提供一些指导.基本上,该程序应该让用户想到一个介于1到100之间的数字,然后询问该数字是高于还是低于50.然后,程序将输出中点,直到范围正确为止,直到答案正确为止.例如,如果输入"h",它将询问数字是否为75,如果响应为"l",则询问数字是否为67,等等. 我认为我已经构建了框架,但是我确实在为找到中间点的下一步而苦苦挣扎.任何指导将不胜感激. im ..
发布时间:2020-09-20 23:52:40 Java开发

indexOf还是二进制搜索?

我有一个字符串数组列表,该字符串按排序顺序排列,我想查找特定元素的索引,哪一个会更快? 执行列表的indexOf() 在等效数组中执行二进制搜索? 解决方案 您可以直接使用Collections.binarySearch以获得更高的效率: public static int binarySearch(List ..
发布时间:2020-09-20 23:52:37 Java开发

为什么Collections.binarySearch给出错误的结果?

我创建了一个列表,其中保存了一些字符串.但是,当我在此列表中执行 binary search (二进制搜索)时,它会返回负值,而该项目位于列表中的 . 到目前为止,当列表中的项目 时,将返回我的知识正值.但是对于某些项目,它返回负值,而对于某些项目,它返回正值. 代码: @Test public void hello() { // List arlst = ne ..
发布时间:2020-09-20 23:50:11 Java开发

二进制搜索和哈希表搜索

我想找出在字典查找和数组的二进制搜索查找之间的折衷点.我期望对Dictionary进行恒定时间查询,对二进制搜索进行对数时间查询,具体取决于集合的大小,而对于较小的集合,二进制搜索的性能更好. 但是,当我看到以下结果时,我感到很惊讶: 让我感到惊讶的是:1.二分搜索首先是对数增长,然后增长得更快. 2.起初哈希值非常稳定,但随后又开始缓慢增长. 3.二进制搜索永远不会比哈希查找更好.下面是我 ..
发布时间:2020-09-20 23:49:01 C#/.NET

如何找到向量中第一个比整数X小的元素? (C ++)

如果我有以下向量{10 10 10 20 20 20 30 30} 并且我想要一个函数返回= X的整数的位置,或者直接返回X之后的较小元素,例如,如果我搜索11,我希望该函数返回2,因为第二个element(10)是第一个较小的元素向量中的11个元素. 我尝试使用lower_bound,但这不起作用. int myints[] = {10,20,30,30,20,10,10,20}; ve ..
发布时间:2020-09-20 23:48:58 C/C++开发

如何仅使用一个键使用std :: binary_search?

我有一些存储在排序向量中的数据.该向量按某个键排序.我知道STL有一种算法可以检查元素是否在此排序列表中.这意味着我可以这样写: struct MyData { int key; OtherData data; }; struct MyComparator { bool operator()( const MyData & d1, const MyData & d2 ) const ..
发布时间:2020-09-20 23:48:56 C/C++开发

仅具有2个参数的递归二进制搜索方法

好的,这是给学校做的作业.我进行递归二进制搜索没有问题,但是赋值明确表示该方法应仅包含2个参数,列表和要搜索的项目.这是我有点迷路的地方. public int binarySearch(List cards, Card key) { int mid = (cards.size()) / 2; if(cards.size() == 1) { if( ..
发布时间:2020-09-20 23:48:51 Java开发

通过二进制搜索获取最接近值的索引

我想在python中进行二进制搜索: def binarySearch(data, val): 其中data是排序数组,而value是要搜索的值.如果找到该值,我想返回index(如data[index] = val).如果找不到该值,我想返回最接近该值的项目的index. 这就是我所拥有的: def binarySearch(data, val): high = l ..
发布时间:2020-09-20 23:48:46 Python