时间:2021-05-20
本文实例讲述了C#快速排序算法。分享给大家供大家参考。具体实现方法如下:
public static int[] QuickSort(int[] arr){ if (arr.Length <= 1) return arr; int pivot = arr.Length - 1; int[] less = GetLessThanEqualToPivot(arr, pivot); int[] greater = GetGreaterThanPivot(arr, pivot); return Concatenate(QuickSort(less),arr[pivot],QuickSort(greater));}public static int[] Concatenate(int[] less,int pivotElement,int[] greater){ List<int> _result = new List<int>(); _result.AddRange(less); _result.Add(pivotElement); _result.AddRange(greater); return _result.ToArray();}public static int[] GetLessThanEqualToPivot(int[] arr, int pivot){ List<int> _result = new List<int>(); for (int i = 0; i < arr.Length - 1; i++) { if (arr[i] <= arr[pivot]) { _result.Add(arr[i]); } } return _result.ToArray();}public static int[] GetGreaterThanPivot(int[] arr, int pivot){ List<int> _result = new List<int>(); for (int i = 0; i < arr.Length - 1; i++) { if (arr[i] > arr[pivot]) { _result.Add(arr[i]); } } return _result.ToArray();}希望本文所述对大家的C#程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#使用委托实现的快速排序算法。分享给大家供大家参考。具体如下:classQuickSort{privatedelegateintCmpOp(ob
本文实例分析了C#的各种排序算法。分享给大家供大家参考。具体分析如下:首先通过图表比较不同排序算法的时间复杂度和稳定性。排序方法平均时间最坏情况最好情况辅助空间
C语言对磁盘文件进行快速排序简单实例快速排序(quicksort)是由C.A.R.Hoare发明并命名的,这种排序被认为是目前最好的一种排序算法。快速排序基于交
本文实例讲述了Python实现的数据结构与算法之快速排序。分享给大家供大家参考。具体分析如下:一、概述快速排序(quicksort)是一种分治排序算法。该算法首
本文实例讲述了C#实现插入排序算法的方法。分享给大家供大家参考。具体分析如下:这个算法的逻辑如下:1、第一个元素可以看做是已经排序好的小数组,第二个元素和这个小