前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >选择排序

选择排序

作者头像
Li_XiaoJin
发布2022-06-10 21:48:56
1960
发布2022-06-10 21:48:56
举报
文章被收录于专栏:Lixj's BlogLixj's Blog

选择排序的相关内容。

选择排序的思路:

第一轮,找到最小的元素,和数组第一个数交换位置。

第二轮,找到第二小的元素,和数组第二个数交换位置...

直到最后一个元素,排序完成。

https://lixj.fun/upload/2021/07/%E9%80%89%E6%8B%A9%E6%8E%92%E5%BA%8Fgif-26451cec2bf841be838833ed2f27462c.gif

算法复杂度:O(n?)

算法空间复杂度:O(1)

算法稳定性:不稳定

代码语言:javascript
复制
public class SelectSort {
    public static void sort(int[] arr) {
        for (int i = 0; i < arr.length; i++) {
            int minIndex = i;
            for (int j = i; j < arr.length; j++) {
                if (arr[j] < arr[minIndex]) {
                    minIndex = j;
                }
            }

            if (minIndex != i) {
                swap(arr, i, minIndex);
            }
        }

    }

    private static void swap(int[] arr, int i, int j) {
        int temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;
    }

    public static void main(String[] args) {
        int[] arr = {10,7,2,4,7,62,3,4,2,1,8,9,19};
        sort(arr);
        System.out.println(Arrays.toString(arr));
    }
}

Copyright: 采用 知识共享署名4.0 国际许可协议进行许可 Links: https://lixj.fun/archives/选择排序

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-08-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com