基于java实现选择排序和插入排序

选择排序

实现逻辑:

选择排序是将当前元素和剩下的元素进行比较当当前元素大于所比较的元素的时候两个元素进行交换

java 复制代码
public class Search {
//    选择排序
    private void Serach() {};
    public static <E extends Comparable <E> > void search(E[] arr) {
        for(int i =0 ; i < arr.length;i++) {
          int minxdata = i;
           for(int j = i+1;j < arr.length;j++) {
                if(arr[j].compareTo(arr[minxdata]) < 0 ) {
                   minxdata = j;
                   sawp(arr,i,minxdata);
               }
            }           
        }
    }
    private static <E> void sawp(E[] arr,int i, int j) {
        E t = arr[i];
        arr[i] = arr[j];
        arr[j] = t;
    }
}

插入排序

java 复制代码
    private AllAearch() {}
    public  static <E extends Comparable <E>> void allAearch(E[] arr) {
            for(int j = i; j-1 >= 0; j--) {
                if(arr[j].compareTo(arr[j-1]) < 0) {
                    sawp(arr,j,j-1);
                }else {
                    break;
                }
            }
//            优化
            E temp = arr[i];
            int j ;
            for( j = i ; j-1 >=0 && temp.compareTo(arr[j-1]) < 0;j--) {
                arr[j] = arr[j-1];
            };
            arr[j] = temp;
        }
    };
    private static <E> void sawp(E[] arr,int i, int j) {
        E t = arr[i];
        arr[i] = arr[j];
        arr[j] = t;
    }
相关推荐
CoderYanger30 分钟前
A.每日一题:835. 图像重叠
java·开发语言·程序人生·leetcode·面试·职场和发展·学习方法
北冥有鱼被烹31 分钟前
perftest 之 ib_write_bw --use-null-mr 参数详解:用 NULL MR 做 RDMA 带宽测试
java
2601_9638702135 分钟前
基于SSM的特产代购系统
java·前端
牧瀬クリスだ42 分钟前
YAML配置详解:SpringBoot实战指南
java·spring·yml
Su57343 分钟前
RuoYi + RAGFlow 搭建私有化知识库完整集成实践(二)
java
wechatbot8881 小时前
极客互动企业微信 SCRM 自动运营平台效果实测
java·微信·企业微信·rpa
需要8261 小时前
JVM 内存区域与对象创建:一次 GC 从哪来
java·jvm·spring boot·spring·servlet·tomcat
Zane19941 小时前
暴力字符串匹配失配就要把文本指针往回拉,KMP凭什么能让它一直往前走
算法
事圆则缓1 小时前
Java 转 Kotlin 的 Android 迁移路线
java
计算机毕设定制辅导-无忧学长1 小时前
《基于Vue的流浪动物救助中心管理系统的设计与实现》
java·vue.js·spring boot·流浪动物救助中心管理系统