![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 56
昨日余光
Kami之人,北海月光
展开
-
快速理解二分查找算法,附java代码实现
二分查找是一种常用的查找算法,其优点在于查找速度较快,最优时间复杂度为O(1),最坏时间复杂度也仅为O(log2n),在性能上十分优秀。二分查找必须对已排序的数组进行,因为其原理是不断比较区间的中位数与需要查找的值。一旦中位数大于查找值,则继续查找中位数与区间首(以下简称begin)的部分,反之,如果中位数小于查找值,则继续查找中位数与区间尾(以下简称end)的部分。原创 2022-11-16 15:08:10 · 298 阅读 · 0 评论 -
一遍掌握,快速排序的入门理解
快速排序,是一种常用的排序算法,因其易于理解且时间复杂度较低的特性而备受程序员青睐。平均复杂度为o(n lgn)。许多编程语言都有内置(优化过)的快速排序算法,例如java、c++等。虽然日常开发中,我们可以直接调用这些内置函数。但是,快速排序因其重要地位,我们仍然有必要掌握好。快速排序需要从排序的数组中选中一个key值,或者说基准值。每一次进行排序,都会根据选择的key值(通常是排序数组开头的值,即下面的begin)将数组根据元素大小切成左边数组和右边数组两部分。这个切开的过程,常见的实现方式是使原创 2022-11-09 18:21:36 · 377 阅读 · 0 评论