1. 冒泡排序 (Bubble Sort)
概述: 冒泡排序是一种简单的排序算法,通过多次遍历待排序的数组,比较相邻元素并将较大的元素逐步“冒泡”到末尾。
优缺点:
- 优点:
- 实现简单,容易理解。
- 稳定排序。
- 缺点:
- 平均和最坏时间复杂度为 O(n²),效率较低。
应用场景:
- 适合小规模数据的排序。
代码示例(C#):
2. 快速排序 (Quick Sort)
概述: 快速排序使用分治法策略,选择一个“基准”元素,将数组划分为两个子数组,然后递归地对这两个子数组进行排序。
优缺点:
- 优点:
- 平均时间复杂度为 O(n log n),性能优越。
- 缺点:
- 最坏情况下时间复杂度为 O(n²)。
- 不稳定排序。
应用场景:
- 适合大规模数据的排序。
代码示例(C#):
3. 二分查找 (Binary Search)
概述: 二分查找是一种高效的查找算法,用于已排序数组,通过每次将查找范围减半,来快速找到目标元素。
优缺点:
- 优点:
- 时间复杂度为 O(log n),查找效率高。
- 缺点:
- 仅适用于已排序的数据。
应用场景:
- 大规模已排序数据中的查找。
代码示例(C#):