2013.12.14
来源:互联网 发布:java calendar.am pm 编辑:程序博客网 时间:2024/05/22 09:00
* 实现快速排序,一开始没有考虑数组内有值相同元素的情况,出现了无限循环的情况
更改之后,添加 iArr[l]<=pivot (line 20);
基于分治的快速排序@java/DataStructure/unit7
import java.util.*;public class TestQuickSort{ public static void main(String [] args){ Random rand=new Random(47); int [] iArr=new int [10]; for(int i=0; i<10; i++) iArr[i]=rand.nextInt(100); System.out.println(Arrays.toString(iArr)); quickSort(0, iArr.length-1, iArr); System.out.println(Arrays.toString(iArr)); } public static int partition(int low, int high, int [] iArr){ int l=low, h=high, pivot=iArr[low]; while(l<h){ while(l<h && iArr[h]>pivot){ h--; } iArr[l]=iArr[h]; while(l<h && iArr[l]<=pivot){ l++; } iArr[h]=iArr[l]; } iArr[l]=pivot; return l; } public static void quickSort(int low, int high, int [] iArr){ if(low>=high) return; else{ int ptr=partition(low, high, iArr); quickSort(low, ptr-1, iArr); quickSort(ptr+1, high, iArr); } } }
0 0
- 2013.12.14
- 2013.12
- 2013.12.01
- 2013.12.02
- 2013.12.03
- 2013.12.05
- 2013.12.06
- 2013.12.07
- 2013.12.08
- 2013.12.09
- 2013.12.10
- 2013.12.10
- 2013.12.11
- 2013.12.11
- 2013.12.12
- 2013.12.13
- 2013.12.13
- 2013.12.15
- CF-373B
- Windows学习笔记4——窗口与消息<二>
- char、varchar、nchar、nvarchar的区别
- DatagramServer
- 15.java DateFormat 和 SimpleDateFormat
- 2013.12.14
- DatagramClient
- 新羅의 衰亡
- 删除乱码文件方法
- UDPReceive
- 递归地翻转一个链表
- UDPSender
- ubuntu12.04与virtualbox下到xp实现文件共享
- VMWare克隆后Ubuntu的"No such device eth0"错误