数据结构-快速排序 java实现
来源:互联网 发布:windows如何打开pages 编辑:程序博客网 时间:2024/06/08 05:20
快速排序又可以分为冒泡排序、快速排序
1、冒泡排序:时间复杂度O(n*n)。 算法思想:每一次排序都会将最大或者最小的数沉到最下面。
<span style="font-size:14px;">public static void bubbleSort(int [] num){ int length=num.length; for(int i=0;i<length;i++){ for(int j=0;j<length-i-1;j++){ int temp; if(num[j]>num[j+1]) { temp=num[j]; num[j]=num[j+1]; num[j+1]=temp; } } } }</span>2、快速排序:使用递归的思想,先任意在数组中选择一个基准将数组分成两个部分,然后再分别对这两个部分进行快速排序,时间复杂度为:O(nlog2n)
<span style="font-size:14px;">/** * description : 快速排序 */ public static void quicksort(int n[], int left, int right) { int dp; if (left < right) { dp = partition(n, left, right); quicksort(n, left, dp - 1); quicksort(n, dp + 1, right); } } public static int partition(int n[], int left, int right) { int pivot = n[left]; while (left < right) { while (left < right && n[right] >= pivot) right--; if (left < right) n[left++] = n[right]; while (left < right && n[left] <= pivot) left++; if (left < right) n[right--] = n[left]; } n[left] = pivot; return left; }</span>
0 0
- 数据结构-快速排序 java实现
- 【数据结构】-快速排序Java实现
- 数据结构---快速排序---java与c++实现
- 数据结构之快速排序java实现
- 数据结构之快速排序的Java实现
- 【java数据结构】快速排序
- 数据结构——快速排序原理及算法Java实现
- 数据结构基础 —— 快速排序 java 实现
- 数据结构与算法-快速排序算法(java实现)
- 数据结构复习之–“快速排序”-JAVA实现
- 数据结构与算法(7)---Java语言实现:快速排序
- JAVA 数据结构之快速排序
- Java数据结构之快速排序
- 数据结构-Java实现-排序
- java数据结构排序之快速排序
- java实现快速排序
- 快速排序Java实现
- 快速排序java实现
- Win7下要求以管理员权限运行程序
- 人生中要制定合理的目标
- C#连接Oracle错误:OCIEnvCreate 失败,返回代码为 -1
- Android4.4 Telephony流程分析——GsmServiceStateTracker管理网络服务状态
- hdu3976[Electric resistance] hdu5006[Resistance] hdu4870[Rating] 高斯消元
- 数据结构-快速排序 java实现
- UML中的九种图
- Python文件右键无IDLE打开项解决办法
- PHP使用FTP转移文件夹以及子文件夹
- 视频编码器评估与参数优化
- 使用swig实现C++的python扩展功能
- POJ 1088滑雪 (记忆化DP)题解
- PHP获取指定日期所在月的第一天和最后一天
- Gas Station(leetcode)