蓝桥杯-1/14天-数位排序【继承Comparable接口实现排序】

简介: 之前写过一个刷题中遇到的排序问题洛谷1093,先根据学生的总成绩排序,如果总分一样的情况下再根据语文排序。总结最好的方法就是写一个类继承Comparable接口来重写compare方法。

题目来源:数位排序


image.png

        之前写过一个刷题中遇到的排序问题洛谷1093,先根据学生的总成绩排序,如果总分一样的情况下再根据语文排序。总结最好的方法就是写一个类继承Comparable接口来重写compare方法。


之前学艺不精,都是直接拿数据结构(List、Map)肝,比如这道题,我一开始直接拿List存储 1~n ,然后把list传数组,然后写一个sort方法用冒泡对 数组 进行排序,结构就是超时

image.png



image.png


因为如果测试集中有相当大的数据时,冒泡排序是一种很耗时的方法,它只适合对少量的数据进行排序。


使用类继承Comparable接口重写compare的方法:

import java.util.*;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
    private static List<Integer> list = new ArrayList<>();
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int m = scan.nextInt();
        scan.close();
        for(int i=1;i<=n;i++){
            list.add(i);
相关文章
|
SQL 分布式计算 Hadoop
Azkaban--使用实战--hive 调度 | 学习笔记
快速学习 Azkaban--使用实战--hive 调度
907 0
Azkaban--使用实战--hive 调度 | 学习笔记
|
SQL 分布式计算 Java
离线数仓(八)【DWD 层开发】(5)
离线数仓(八)【DWD 层开发】
|
消息中间件 JSON Java
离线数仓(四)【数仓数据同步策略】(4)
离线数仓(四)【数仓数据同步策略】
|
SQL 前端开发 Shell
离线数仓(八)【DWD 层开发】(4)
离线数仓(八)【DWD 层开发】
|
SQL 存储 关系型数据库
离线数仓(五)【数据仓库建模】(1)
离线数仓(五)【数据仓库建模】
离线数仓(五)【数据仓库建模】(1)
|
消息中间件 关系型数据库 MySQL
|
监控 安全 Apache
【Flume】Flume数据丢失问题及解决方案
【4月更文挑战第4天】【Flume】Flume数据丢失问题及解决方案
|
存储 SQL
离线数仓(九)【DWS 层开发】(1)
离线数仓(九)【DWS 层开发】