为了账号安全,请及时绑定邮箱和手机立即绑定

Java泛型-实现选择排序算法

标签:
Java
package com.yuyong.alorithms;

//import java.util.ArrayList;
import java.util.List;

public class SelectionSort {

    /**
     * @param args
     */

    List<TypeName> T;

    // public SelectionSort() {
    // this.template = new ArrayList();
    // }

    public void selectionSort(TypeName arr[], int n) {

        for (int i = 0; i < n; i++) {
            // 寻找[i,n)区间范围内的最小值
            int minIndex = i;
            TypeName temp;
            for (int j = i + 1; j < n; j++) {
                if (arr[j].str.compareTo(arr[minIndex].str) < 0) {
                    minIndex = j;
                }
            }
            temp = arr[minIndex];
            arr[minIndex] = arr[i];
            arr[i] = temp;
        }

    }

    public static void main(String[] args) {

        // TypeName[] a = { new TypeName(10), new TypeName(8), new TypeName(9),
        // new TypeName(6), new TypeName(7), new TypeName(5),
        // new TypeName(4), new TypeName(3), new TypeName(1),
        // new TypeName(2) };
        //
        // SelectionSort ss = new SelectionSort();
        // ss.selectionSort(a, 10);
        // for (int i = 0; i < 10; i++) {
        // System.out.print(a[i].id + " ");
        // }

        TypeName[] a2 = { new TypeName("C"), new TypeName("A"),
                new TypeName("B"), new TypeName("E"), new TypeName("D"),
                new TypeName("G"), new TypeName("F"), new TypeName("H"),
                new TypeName("I"), new TypeName("J") };

        SelectionSort ss2 = new SelectionSort();
        ss2.selectionSort(a2, 10);
        for (int i = 0; i < 10; i++) {
            System.out.print(a2[i].str + " ");
        }
    }

}
package com.yuyong.alorithms;

public class TypeName {

    public float id;
    public String str;

    public TypeName(float id) {
        this.id = id;
    }

    public TypeName(String str) {
        this.str = str;
    }

}
点击查看更多内容
8人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
软件测试工程师
手记
粉丝
7
获赞与收藏
180

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消