Java:快速排序(单指针)
Java:快速排序(单指针)
ricardohn 发表于2年前
Java:快速排序(单指针)
  • 发表于 2年前
  • 阅读 29
  • 收藏 4
  • 点赞 2
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   


import java.util.Arrays;
import java.util.Scanner;

public class Quick_Sort {
	private static Scanner s;
	static int tmp;
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int[] scores = new int[10];
		s = new Scanner(System.in);
		for (int i=0;i<scores.length;i++){
			scores[i] = s.nextInt();
		}
		System.out.println(partition(scores,0,scores.length));
		System.out.println(Arrays.toString(quick_sort(scores,0,scores.length)));
	}
	public static int partition(int[] arrays,int p,int q){
		int x=arrays[p];
		int i=p;
		int tmp;
		for(int j=p+1;j<q;j++){
			if (arrays[j]<=x){
				i+=1;
				tmp=arrays[j];
				arrays[j]=arrays[i];
				arrays[i]=tmp;
				}
			}
		
		tmp=arrays[i];
		arrays[i]=x;
		arrays[p]=tmp;
		return i;
	}
	public static int[] quick_sort(int[] arrays,int p,int q){
		if(p<q){
			int r=partition(arrays,p,q);
			quick_sort(arrays,p,r-1);
			quick_sort(arrays,r+1,q);	
		
		}
		return arrays;
	}
}

 

共有 人打赏支持
粉丝 1
博文 76
码字总数 30236
×
ricardohn
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: