java - 关于算法的选择排序的问题,代码写完了,就是不出来结果,求大神看看哪里出错了?
怪我咯
怪我咯 2017-04-18 10:24:23
[Java讨论组]

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(3)
PHPz

min=j;导致自己和自己交换,没有任何作用;

怪我咯
public class Selection {
    
    public static void sort(int[] args) {
        int n = args.length;
        for (int i = 0;i < n;i++){
            int min = i;
            for (int j = i+1;j < n;j++) {
                if (args[j] < args[min]) {
                    min = j;
                }
            }
            exch(args, i, min);
        }
    }
    
    private static void exch(int[] a, int i, int j) {
        int t = a[i];
        a[i] = a[j];
        a[j] = t;
    }

}
PHP中文网

你定义这个 min变量多此一举,把 min的定义去掉,数组中用到min的地方 用 i 代替即可,min =j 这样每次都是自己和自己交换,或者 你把min=j的定义放在数组值交换之后。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号