洛谷P1056 排座椅 java实现 用Set和Map解决排序 包含java中Map按value值进行排序的方法

    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.Comparator;
    import java.util.List;
    import java.util.Map;
    import java.util.Scanner;
    import java.util.TreeMap;
    import java.util.TreeSet;
    import java.util.Map.Entry;

    public class Main {
        //这个函数是按map的value值由大到小排序的函数
        public static void f(Map map,int k) {
            List>list=new ArrayList>(map.entrySet());
            
            Collections.sort(list,new Comparator>() {
            	//由大到小排序
                public int compare(Entry o1, Entry o2) {
                    return o2.getValue()-(o1.getValue());
                }
            });
            
            int num=0;
            //由要求知要按顺序输出key值,TreeSet的底层是红黑树,因此要把按map的value值排序的前k位的key按从小到大的顺序输出
            TreeSetset=new TreeSet();
            for(Map.Entrymapping:list) {
            	if(nummaplie=new TreeMap<>();
            Mapmaphang=new TreeMap<>();
            int x,y,p,q;
            for(int i=0;i

 

 

你可能感兴趣的:(排序)