![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 86
walkerxsxk
这个作者很懒,什么都没留下…
展开
-
算法入门--排序--快速排序03
快速排序(Quick Sort)是一种高效的排序算法,采用分治法(Divide and Conquer)的策略来把一个序列分为较小和较大的两个子序列,然后递归地排序两个子序列。选择基准值(Pivot):从数组中挑选一个元素作为基准值,选择方法有多种,例如可以选第一个元素、最后一个元素、中间元素或者随机一个元素。分区(Partitioning):重新排列数组,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准的后面(相等的数可以到任一边)。在这个分区退出之后,该基准就处于数组的中间位置。原创 2024-03-31 23:58:50 · 767 阅读 · 1 评论 -
算法入门--排序--冒泡排序02
冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经过交换慢慢“浮”到数列的顶端,就像水泡一样。冒泡排序算法的步骤如下:--比较相邻的元素。如果第一个比第二个大,就交换它们两个。--对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。--针对所有的元素重复以上的步骤,除了最后一个。原创 2024-03-28 11:54:56 · 677 阅读 · 0 评论 -
算法--鸽巢排序
鸽巢排序是一种简单且在特定条件下高效的排序算法。它适用于元素范围较小且互不相同的情况。然而,由于鸽巢排序需要额外的存储空间来创建桶,因此在空间敏感的应用场景中可能不适用,且在元素范围较大或存在大量重复元素时效率不高,因此在实际应用中并不常见。尽管如此,鸽巢排序的原理和实现仍然是数据结构和算法学习中的一个重要组成部分。原创 2024-03-27 22:41:28 · 347 阅读 · 0 评论 -
算法入门--排序--桶排序01
桶排序(Bucket Sort),又称为箱排序,是一种分布式排序算法,其基本思想是将待排序的数据分布到有限数量的桶里,每个桶内的数据再进行排序,然后按照顺序将各个桶中的数据合并起来,从而实现整个数据集的排序。确定桶的数量和范围:根据待排序数据的特点和范围,确定合适数量的桶以及每个桶所代表的数据范围。将数据分配到各个桶中:遍历待排序的数据,将每个数据根据其大小分配到对应的桶中。通常情况下,每个桶用数组或链表等数据结构来存储。对每个桶中的数据进行排序。原创 2024-03-27 22:43:38 · 1813 阅读 · 0 评论