C++ 动态数组列表的线性和二进制搜索

C++ 动态数组列表的线性和二进制搜索,c++,arrays,search,C++,Arrays,Search,嘿,我正在做一个动态数组列表,我想知道如何对数组列表进行线性和二进制搜索,这些搜索的优缺点是什么。猜测您正在将它们实现为一个扩展数组,当您的空间用完时,您会重新分配新数组,然后复制元素 在这种情况下,您的问题归结为如何在此数组上实现线性和二进制搜索 在这种情况下,网上可以找到大量的文章和样本 线性搜索的优势在于,对于小数组,没有速度差异,只要您要查找的项目在数组中,它将始终适用于未排序的数组 这与二进制搜索相比,二进制搜索对于大型阵列非常快,但是对于小型阵列,与线性搜索相比,没有真正的性能优势。

嘿,我正在做一个动态数组列表,我想知道如何对数组列表进行线性和二进制搜索,这些搜索的优缺点是什么。

猜测您正在将它们实现为一个扩展数组,当您的空间用完时,您会重新分配新数组,然后复制元素

在这种情况下,您的问题归结为如何在此数组上实现线性和二进制搜索

在这种情况下,网上可以找到大量的文章和样本

线性搜索的优势在于,对于小数组,没有速度差异,只要您要查找的项目在数组中,它将始终适用于未排序的数组


这与二进制搜索相比,二进制搜索对于大型阵列非常快,但是对于小型阵列,与线性搜索相比,没有真正的性能优势。这种速度的提高是以必须对其进行排序以获得这种优势为代价的。

猜测您正在将其实现为一个扩展阵列,在空间不足时,您可以重新分配新阵列,然后将元素复制过来

在这种情况下,您的问题归结为如何在此数组上实现线性和二进制搜索

在这种情况下,网上可以找到大量的文章和样本

线性搜索的优势在于,对于小数组,没有速度差异,只要您要查找的项目在数组中,它将始终适用于未排序的数组


这与二进制搜索相比,二进制搜索对于大型阵列非常快,但是对于小型阵列,与线性搜索相比,没有真正的性能优势。这种加速的代价是必须对其进行排序才能获得这种优势。

这有帮助吗?如果标签错误,请立即修复。这有帮助吗?如果标签错误,请立即修复。