选择排序递归算法

package week5;

import org.junit.Test;

/*
 * 选择排序递归算法
 * @author cainiaozeng
 * */
public class SelectSort {
    @Test
    public void test(){
        int[] A = {12,45,2,1,89,64,25,31};
        selectsort(A,0);
    }
    
    public void selectsort(int[] A,int pos){
        
        int[] Aa = A; //Aa用来存放已经排好序的数组
        int length = A.length;
        for(int i=pos; i<length-1; i++){
            if(Aa[i+1] < Aa[pos]){
                int temp = Aa[i+1];
                Aa[i+1] = Aa[pos];
                Aa[pos] = temp;
            }
        }
        for(int i=0;i<Aa.length;i++){
            System.out.print(Aa[i]+" ");
        }
        System.out.println(".........................");
        
        if(pos < length){ //递归入口,当条件不满足时,递归结束
            selectsort(Aa,pos+1);        
        }   
    }
}


运行结果:

1 45 12 2 89 64 25 31 .........................
1 2 45 12 89 64 25 31 .........................
1 2 12 45 89 64 25 31 .........................
1 2 12 25 89 64 45 31 .........................
1 2 12 25 31 89 64 45 .........................
1 2 12 25 31 45 89 64 .........................
1 2 12 25 31 45 64 89 .........................
1 2 12 25 31 45 64 89 .........................
1 2 12 25 31 45 64 89 .........................


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值