两种排序算法,java
来源:互联网 发布:rom软件下载 编辑:程序博客网 时间:2024/06/05 21:11
public class Main{public static void main(String[] args){int[] array = {2,3,5,1,1,36,5};array = QuickSort(array,0, array.length-1);for(int i=0; i<array.length; i++){System.out.println(array[i]);}}static int[] BubbleSort(int[] array, int n){for(int i=0; i<n-1; i++){for(int j=0; j<n-1-i; j++){if(array[j]>array[j+1]){int temp = array[j];array[j] = array[j+1];array[j+1] = temp;}}}return array;}//这种算法,刚开始会埋没“标杆元素”(被程序刚刚运行时找到的后面的一个小元素埋没(替换)),接下来//从后面放到前面的那个元素,又会被前面找到的大元素替换,,就这样一直替换,一直都只会有 “标杆元素”//被替换掉,在最后一步,再把它找回来就行static int[] QuickSort(int[] array, int left, int right){if(left < right){int i=left;int j=right;//每次的标杆元素都选取 left 这个位置的int x=array[i];while(i<j){//从后面找到第一个小元素,放在前面while(i<j && array[j]>x){j--;}if(i<j){array[i]=array[j];i++;}//从前面找到第一个大元素,放在后面while(i<j && array[i]<x){i++;}if(i<j){array[j]=array[i];j--;}}array[i]=x;QuickSort(array, left,i-1);QuickSort(array, i+1,right);}return array;}}
阅读全文
0 0
- 两种排序算法,java
- JAVA实现排序算法(二):两种归并排序
- java快速排序算法(数组和list两种方式)
- 黑马程序员-----JAVA基础--数组排序的两种算法
- 两种常见排序算法
- 排序算法--两种选择排序
- 排序算法之两路归并排序(Java)
- 数组排序的两种算法--冒泡排序/选择排序
- 两种常用的排序算法
- MapReduce里面的两种排序算法
- 两种快速排序算法比较
- 冒泡排序算法的两种优化
- 冒泡排序算法及其两种优化
- 两种排序算法的运行时间
- JavaScript实现的两种排序算法
- 算法题--两种排序方法
- 快速排序算法的两种实现
- 按照参数key或value值进行字典排序的两种java算法实现
- 华为机试-字符串排序
- redis事务实现原理
- light oj 1231
- 关于使用shiro做权限 上传文件失败的问题 解决方案
- 如何解决多线程不安全
- 两种排序算法,java
- Python|计蒜客——爬楼梯
- C# 找出泛型集合中的满足一定条件的元素 List<T>.Wher()
- NYOJ722
- python画柱状图--不同颜色并显示数值
- window下 Cannot load analyzer: org.wltea.analyzer.lucene.IKAnalyzer
- 关于代理模式
- UBIFS文件系统简介 与 利用mkfs.ubifs和ubinize两个工具制作UBI镜像
- Mysql之1050错误解决办法