java简单的排序算法复习(冒泡、快速)
2013-04-17 21:19
246 查看
冒泡排序:即简单的从序列的一端开始两两交换,交换n-1次,第一轮结束,第二轮用同样的方法,但是次数是n-2次
View Code
以上是升序的冒泡。
![](http://images.cnitblog.com/blog/461996/201304/17203402-f5b5bbdb3f1d42568dcea7c3489dc38c.jpg)
实验开始的时候swap()方法一开始传入的不是array的引用导致排序实拍!
快速排序:
这里讲的很清楚:原文地址:http://www.cnblogs.com/morewindows/archive/2011/08/13/2137415.html
View Code
public class BubbleSort{ public static void main(String[] srg){ int[] array = {55,66,33,45,78,23,90,2,56}; BubbleSort bs = new BubbleSort(); bs.bbsort(array);//调用冒泡排序方法,升序 System.out.print("排序结果为: "); for(int k=0;k<array.length;k++){ System.out.print(" " + array[k]+ " "); } } private void bbsort(int[] array){ for(int i=0;i<array.length-1;i++){ for(int j=0;j<array.length-1-i;j++){ if(array[j]>array[j+1]){ swap(array,j); } } } } private void swap(int[] array,int j){ int temp = 0; temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } }
以上是升序的冒泡。
![](http://images.cnitblog.com/blog/461996/201304/17203402-f5b5bbdb3f1d42568dcea7c3489dc38c.jpg)
实验开始的时候swap()方法一开始传入的不是array的引用导致排序实拍!
快速排序:
这里讲的很清楚:原文地址:http://www.cnblogs.com/morewindows/archive/2011/08/13/2137415.html
void quick_sort(int s[], int l, int r) { if (l < r) { //Swap(s[l], s[(l + r) / 2]); //将中间的这个数和第一个数交换 参见注1 int i = l, j = r, x = s[l]; while (i < j) { while(i < j && s[j] >= x) // 从右向左找第一个小于x的数 j--; if(i < j) s[i++] = s[j]; while(i < j && s[i] < x) // 从左向右找第一个大于等于x的数 i++; if(i < j) s[j--] = s[i]; } s[i] = x; quick_sort(s, l, i - 1); // 递归调用 quick_sort(s, i + 1, r); } }
相关文章推荐
- 【转】排序算法复习(Java实现)(一): 插入,冒泡,选择,Shell,快速排序
- 排序算法复习(Java实现):插入,冒泡,选择,Shell,快速排序, 归并排序,堆排序,桶式排序,基数排序
- 排序算法复习(Java实现): 插入,冒泡,选择,Shell,快速排序
- 排序算法复习(Java实现)(一): 插入,冒泡,选择,快速排序
- 排序算法复习(Java实现)(一): 插入,冒泡,选择,Shell,快速排序
- 排序算法复习(Java实现)(一): 插入,冒泡,选择,Shell,快速排序
- 排序算法复习(Java实现)(一): 插入,冒泡,选择,Shell,快速排序
- 001-简单的java代码实现几种排序算法(插入,快速,冒泡,选择)
- 排序算法复习(Java实现)(二): 插入,冒泡,选择,Shell,快速排序
- 【转】排序算法复习(Java实现)(一): 插入,冒泡,选择,Shell,快速排序
- 排序算法总结(二)-------选择,堆,冒泡,快速,归并排序(java实现)
- 常见的排序算法(Java实现):冒泡、插入、选择、快速排序
- 排序算法Java描述:选择、冒泡、插入、希尔、归并、快速及三向切分快速排序
- java简单实现冒泡 快速 选择排序
- java排序之冒泡、插入、选择、快速等排序算法
- 六大经典排序算法(Java版):冒泡、选择、插入、希尔、快速、归并
- 各排序算法总结(简单选择,冒泡,快速,希尔排序,堆排序)
- 几种简单的排序算法一(冒泡、选择、插入、快速)python描述
- 排序算法(冒泡 插入 快速 归并)java
- 七大排序算法(冒泡,选择,插入,二分法排序,希尔,快速,合并,堆排序)的java实现