成绩管理系统,改造排序功能

上一集:借着期末作业,写一个JavaWeb项目

快速排序,总分

参考:《算法导论》第七章

在这里手写了原始版的快速排序,双指针乃种方法,下次再研究。

刚开始用双指针乃种方法研究了一天,结果也没研究出来,然后看书,柳暗花明。

java 复制代码
private static void quickSort(List<Student>stus,int start,int end){
    if(start<end){
        int p=partition(stus,start,end);
        quickSort(stus,start,p-1);
        quickSort(stus,p+1,end);
    }
}
private static int partition(List<Student>stus,int start,int end){
    int pivot=stus.get(end).mark.sum;
    int i=start-1;
    for(int j=start;j<end;j++){
        if(stus.get(j).mark.sum>=pivot){
            i++;
            swap(stus,i,j);
        }
    }
    swap(stus,i+1,end);
    return i+1;
}

2023年12月19日20:12:20(其他排序方法,每天再来写)

相关推荐
不是二师兄的八戒15 分钟前
本地 PHP 和 Java 开发环境 Docker 化与配置开机自启
java·docker·php
爱编程的小生27 分钟前
Easyexcel(2-文件读取)
java·excel
带多刺的玫瑰44 分钟前
Leecode刷题C语言之统计不是特殊数字的数字数量
java·c语言·算法
爱敲代码的憨仔1 小时前
《线性代数的本质》
线性代数·算法·决策树
yigan_Eins1 小时前
【数论】莫比乌斯函数及其反演
c++·经验分享·算法
阿史大杯茶1 小时前
AtCoder Beginner Contest 381(ABCDEF 题)视频讲解
数据结构·c++·算法
计算机毕设指导61 小时前
基于 SpringBoot 的作业管理系统【附源码】
java·vue.js·spring boot·后端·mysql·spring·intellij-idea
Gu Gu Study1 小时前
枚举与lambda表达式,枚举实现单例模式为什么是安全的,lambda表达式与函数式接口的小九九~
java·开发语言
Chris _data1 小时前
二叉树oj题解析
java·数据结构
牙牙7052 小时前
Centos7安装Jenkins脚本一键部署
java·servlet·jenkins