排序相关的问题(jq,java)_1123

数据list<String,Object> behaviorData如下:

我要做的是把这个list里面占百分比前四名(除了[0]的那个百分百的)的数据显示出来。显示在页面上。

List<BehaviorData> behaviorData = this.behaviorService.searchBehaviorByCondition(behaviorAnalysis);
//        通过循环计算出违法行为top4
        float[] behaviorTop4 = new float[behaviorData.size()-1];
        for (int i = 1; i <behaviorData.size() ; i++) {
            String percent = behaviorData.get(i).getViolationProportion();
            if (percent!=null){
                behaviorTop4[i-1] = Float.parseFloat(percent.replace("%",""));
            }
        }
        Arrays.sort(behaviorTop4);
        List<BehaviorData> behaviorNum4 = new ArrayList<BehaviorData>();
        for (int i = 1; i <=4 ; i++) {
            Float x= behaviorTop4[behaviorTop4.length-i];
            DecimalFormat df = new DecimalFormat("0.00");
            df.format(x);
            String value = x+"%";
            for (int j = 0; j < behaviorData.size(); j++) {
                if (value.equals(behaviorData.get(j).getViolationProportion())){
                    BehaviorData mer = new BehaviorData();
                    mer.setViolationProportion(value) ;
                    mer.setBehaviorName(behaviorData.get(j).getBehaviorName());
                    behaviorNum4.add(mer);
                    break;
                }
            }
        }
时间: 2024-12-22 08:52:21

排序相关的问题(jq,java)_1123的相关文章

各种排序算法的分析及java实现

各种排序算法的分析及java实现 排序一直以来都是让我很头疼的事,以前上<数据结构>打酱油去了,整个学期下来才勉强能写出个冒泡排序.由于下半年要准备工作了,也知道排序算法的重要性(据说是面试必问的知识点),所以又花了点时间重新研究了一下. 排序大的分类可以分为两种:内排序和外排序.在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序.下面讲的排序都是属于内排序. 内排序有可以分为以下几类: (1).插入排序:直接插入排序.二分法插入排序.希尔排序. (2).

[转]各种排序算法的分析及java实现

原文:http://www.cnblogs.com/liuling/p/2013-7-24-01.html 排序一直以来都是让我很头疼的事,以前上<数据结构>打酱油去了,整个学期下来才勉强能写出个冒泡排序.由于下半年要准备工作了,也知道排序算法的重要性(据说是面试必问的知识点),所以又花了点时间重新研究了一下. 排序大的分类可以分为两种:内排序和外排序.在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序.下面讲的排序都是属于内排序. 内排序有可以分为以下几

TERSUS画画一样开发软件 集合类元件介绍-对象排序相关元件

TERSUS无代码手机电脑管理类软件开发,其中对象排序相关元件包括:数字序列(Range)元件.排序(Sort)元件.去重(Unique Items)元件 数字序列(Range)元件:是创建一个包含指定范围的数组,创建出一个整数列表,和有代码开发一样,一般是用在循环中的,比如需要重复运算15次,就用这个来创建15个数字序列: 排序(Sort)元件:是将对象进行排序的一个元件,可以指定排序的依据,是按对象中哪一个字段或名称的对象进行处理: 去重(Unique Items)元件:是将一组对象中的重复

Java功底篇系列-02-如何理解实际开发中与“排序”相关的问题

场景一:找出100W数据中TOP10 很自然的想法是排序,可是要知道对100W数据进行排序,不论采用什么样的排序算法吧,最坏情况下,应该是100W*100W的计算量,太大了. 可是,不排序又能怎么做呢?为什么要排序呢?我们仅仅需要的是TOP10. 思考下,找出100W数据中TOP1,你会排序吗? 找TOP1,相信大家和我一样,都不会去排序,应该是搞一个变量max认为它最大,然后遍历一边100W数据,在遍历过程中进行比较替换max就可以了找到TOP1. 依此规律,我们为什么不搞一组变量max1,m

拓扑排序获取所有可能序列JAVA实现

在看算法基础这本书,看到有向无环图,其中介绍到了拓扑排序,讲到了获取拓扑序列的方法,结合自己的理解,用JAVA代码实现了获取所有可能序列,水平有限,效率什么的就没有考虑,下面贴上代码: package graphics.dag.topologicalsort; import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * 有向无环图所有的走法 * @author zhangxinren * */

TreeSet排序相关总结

java的集合这一块在工作中用得还比较多,有些东西老是忘,因此在此记录下来. TreeSet原理 1.特点 TreeSet是用来排序的, 可以指定一个顺序, 对象存入之后会按照指定的顺序排列 2.使用方式 a.自然顺序(Comparable) TreeSet类的add()方法中会把存入的对象提升为Comparable类型 调用对象的compareTo()方法和集合中的对象比较(当前存入的是谁,谁就会调用compareTo方法) 根据compareTo()方法返回的结果进行存储 b.比较器顺序(C

排序算法分析(一)-java实现

1.定义 所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作.排序算法,就是如何使得记录按照要求排列的方法.排序算法在很多领域得到相当地重视,尤其是在大量数据的处理方面.一个优秀的算法可以节省大量的资源.在各个领域中考虑到数据的各种限制和规范,要得到一个符合实际的优秀算法,得经过大量的推理和分析. 2.算法分类 2.1.常见的排序算法 插入排序和冒泡排序又被称作简单排序,他们对空间的要求不高,但是时间效率却不稳定:而后面三种排序相对于简单排序对空间的要求稍高一

桶排序(BucketSort)(java)

一.原理 桶排序的工作原理是吧区间划分为n个大小相同的子区间,这样的区间称为桶.然后将n个输入的数分步到各个桶中去.每个桶再个别的排序,然后按照次序吧各个桶 中的元素列出来即可. 二.时间复杂度 桶排序是一种鸽巢排序的一种归纳结果.当要被排序阵列内的数值是均匀分配的时候,桶排序使用线性时间(O(n)).但桶排序并不是比较排序,它不受 O(nlongn)下限的影响. eg:对大小为[1...1000]范围内的n个整数A[1..n]排序.可以把桶设置为大小为10的范围,具体而言设集合B[1]存储[1

【相关网站 - 01】- Java 相关网站

一.官方网站 1. Java 官方网站 https://www.java.com/zh_CN/ 2. Spring 官方网站 http://spring.io/ 1. Spring Framework 2. Spring Boot 3. Spring Cloud 3. Tomcat http://tomcat.apache.org/ 4. Netty https://netty.io/ 二.相关网站 原文地址:https://www.cnblogs.com/SelfCoding/p/102269