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

上一集:借着期末作业,写一个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(其他排序方法,每天再来写)

相关推荐
青 春 记 忆6 分钟前
LeetCode 53. 最大子数组和|Python 解法详解
python·算法·leetcode
番茄炒鸡蛋加糖7 分钟前
中级核心技术1--MySQL/Java 并发
java·数据库·mysql
豆瓣鸡18 分钟前
算法日记 - Day10
算法
he___H23 分钟前
Spring-Configur注解
java·spring
戴西软件28 分钟前
戴西CAxWorks.VPG车辆工程仿真软件技术解析(上)——安全仿真体系的自动化构建
运维·网络·数据库·人工智能·算法·安全·自动化
zander25838 分钟前
4. 寻找两个正序数组的中位数:用分割点代替合并
数据结构·算法
Kisorge1 小时前
【电机控制器】 基于STSPIN32G4的FOC控制
stm32·嵌入式硬件·算法
SunnyDays10111 小时前
Java 如何为 PDF 添加、修改和删除书签
java·pdf
Elivs1 小时前
RMSNorm函数
人工智能·算法·机器学习
铃木之影1 小时前
Java 版本 RAG 示例(Spring AI + Milvus)
java·人工智能·spring