Day01-java-直接选择排序

本文详细介绍了使用Java编程语言实现的直接选择排序算法步骤,通过实例演示了如何对整数数组进行排序,并展示了排序过程中的关键步骤和数组变化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

保存路径:C:\Users\10198\Desktop\java\TM\sl\5\13

 直接选择排序算法实例

主体算法程序代码java:

    public void sort(int[] array) {
        int index;
        for (int i = 1; i < array.length; i++) {
            index = 0;
            for (int j = 1; j <= array.length - i; j++) {
                if (array[j] > array[index]) {
                    index = j;
                }
            }
            // 交换在位置array.length-i和index(最大值)上的两个数
            int temp = array[array.length - i]; // 把第一个元素值保存到临时变量中
            array[array.length - i] = array[index]; // 把第二个元素值保存到第一个元素单元中
            array[index] = temp; // 把临时变量也就是第一个元素原值保存到第二个元素中
        }

     

试数:(方便看懂算法)我就像个计算机@~@

1->  

int[] array = { 63, 4, 24, 1, 3, 15 };
i = 1   i<array.length(6)  index= 0
j = 1  j<=array.length - i(6-1=5)  成立
array[j=1] >array[index=0] 
    4                      63           不成立
j= 2  j<=array.length - i(2<=5)成立
array[j=2] >array[index=0]
    24                       63          不成立
j= 3  ...
交换在位置array.length-i和index(最大值)上的两个数
交换array[4]与array[0]

int[] array = { 63, 4, 24, 1, 3, 15 };
int[] array = { 15, 4, 24, 1, 3, 63 };


2->
i=2  i<5 成立  index = 0
j=1 ; j<=6-i=4 成立
array[1] > array[0]
 4                  15  不成立
j=2;  j<4  成立
array[2] > array[0]
24                   15   成立
index = 2

j=3 ; j<= array.length - i=4 成立
array[3]>array[2]
1              24   不成立
j=4  成立成立
交换在位置array.length-i和index(最大值)上的两个数
交换array[4]和array[3]
int[] array = { 15, 4, 24, 1, 3, 63 };
int[] array = { 15, 4, 3, 1, 24, 63 };

不想再算了。。。直接上结果(仅供参考)

第三次:int[] array = { 1, 4, 3, 15, 24, 63 };

第四次:int[] array = { 1, 3, 4, 15, 24, 63 };

第五次:int[] array = { 1, 3, 4, 15, 24, 63 };

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值