自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 排序:归并排序

归并排序,也称为 (MERGE-SORT),是一种基于分治法(Divide and Conquer)的排序算法。该算法的主要思想是将已有序的子序列合并,以达到完全有序的序列。归并排序在计算机科学中占据重要地位,在数据库管理、数据分析、信息检索等领域有广泛应用。现实生活中,我们可以根据数据特点和需求选择合适的排序方法,以提高编程效率。

2024-04-02 11:15:54 639 12

原创 排序:希尔排序

希尔排序(Shell Sort)是一种基于插入排序的算法,由Donald Shell于1959年提出。它通过比较相距一定间隔的元素来工作,各趟比较所用的距离随着算法的进行而减小,直到只比较相邻元素的最后一趟为止。希尔排序的基本思想是将整个待排序的记录序列分割成若干个子序列分别进行直接插入排序,待整个序列中的记录“基本有序”时,再对全体记录进行一次直接插入排序。这里“基本有序”是相对概念,它是希尔排序能够提高排序效率的关键。

2024-04-01 19:13:08 1016 3

原创 排序:选择排序

选择排序的时间复杂度为O(n^2),因为它需要遍历数组来查找每个位置上的最小(或最大)元素。尽管它的效率不是特别高,但是选择排序算法因其简单性而在某些情况下仍然有用。特别是当内存很宝贵时,选择排序可以避免使用额外的空间,因为它不需要像归并排序那样使用额外的数组。

2024-04-01 10:44:18 330 1

原创 排序:冒泡排序

冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“冒”到数列的顶端。虽然冒泡排序在理解和实现上都很简单,但它通常不是最高效的排序算法,特别是对于大数据集。它的平均和最坏的时间复杂度都是O(n²),其中n是数列的长度。不过,对于小型数列或者部分已经排序的数列,冒泡排序有时候会比其他复杂排序算法更快。

2024-03-31 22:35:23 392 1

原创 排序:插入排序

插入排序的的时间复杂度为O(n^2),对于小规模数据排序是有效的。它的优点是简单、稳定,在实现上也比较容易理解。但缺点是效率低,对于大规模数据处理不够高效。尽管如此,由于其实现简单,插入排序在数据量不大时,比复杂度更高的排序算法(如快速排序、归并排序等)运行得更快,因此在实际应用中仍然有广泛的应用。特别是在处理几乎已经排序好的数据或者小规模数据时,插入排序的性能可以超越其他复杂度更高的排序算法。

2024-03-31 20:42:18 175 2

原创 算法和数据结构

算法和数据结构是计算机科学中的核心概念,对于理解和设计复杂系统至关重要。通过学习和掌握各种算法和数据结构,我们可以更好地解决问题,并且能够设计出更高效、更优雅的软件和系统。

2024-03-31 19:26:04 302 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除