黑马程序员技术交流社区
标题:
哪位大神帮忙看看我的代码出现异常是因为什么……谢谢啦
[打印本页]
作者:
Michael_xpd
时间:
2013-11-19 18:33
标题:
哪位大神帮忙看看我的代码出现异常是因为什么……谢谢啦
package com.itheima;
public class Test20 {
public static void main(String[] args) {
QuickSort qs=new QuickSort();
int arr1[]={44,22,2,32,54,22,88,77,99,11};
qs.arr1=arr1;
qs.sort(0,qs.arr1.length-1);
qs.printArray();
}
}
class QuickSort(){
public int arr1[];
private int partition(int[] arr,int low,int high){
int key=arr[low];
while(low<high){
while(low<high && arr[high]>=key)
high--;
arr[low]=arr[high];
while(low<high && arr[low]<=key)
low++;
arr[high]=arr[low];
}
arr[low]=key;
return low;
}
public void sort(int low,int high){
if(lwo<high){
int result=partition(arr1,low,high)
sort(low,result-1);
sort(result+1,high);
}
public void printArray(){
for(int i=0;i<=arr1.length-1;i++)
System.out.print(arr[i]+' ');
}
}
复制代码
QQ截图20131119183209.png
(22.88 KB, 下载次数: 10)
下载附件
2013-11-19 18:33 上传
作者:
hurryup
时间:
2013-11-19 18:55
搞了半天是个排序的方法,我帮你修改了下,都是基本的语法错误,代码如下:
public class Test20 {
public static void main(String[] args) {
QuickSort qs=new QuickSort();
int arr1[]={44,22,2,32,54,22,88,77,99,11};
qs.arr1=arr1;
qs.sort(0,qs.arr1.length-1);
qs.printArray();
}
}
class QuickSort{
public int arr1[];
private int partition(int[] arr,int low,int high){
int key=arr[low];
while(low<high){
while(low<high && arr[high]>=key)
high--;
arr[low]=arr[high];
while(low<high && arr[low]<=key)
low++;
arr[high]=arr[low];
}
arr[low]=key;
return low;
}
public void sort(int low,int high){
if(low<high){
int result=partition(arr1,low,high);
sort(low,result-1);
sort(result+1,high);
}
}
public void printArray(){
for(int i=0;i<=arr1.length-1;i++)
System.out.print(arr1[i]+" ");
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2