快速排序项目中使用到的

List<FlowUseCondition> sortActiveFlowList = quickSort(activeDurationList);

//快速排序获取最小的时间
public List<FlowUseCondition> quickSort(List<FlowUseCondition> list){
if(list==null || list.size()==0) return null;
if(list.size()<2) return list;
final long index = list.get(0).getActiveTime().getTime();
final ArrayList<FlowUseCondition> begin = new ArrayList<FlowUseCondition>();
final ArrayList<FlowUseCondition> end = new ArrayList<FlowUseCondition>();
long choice;
for(int i=1;i<list.size();i++){
choice = list.get(i).getActiveTime().getTime();
if(choice<index) begin.add(list.get(i));
else{
end.add(list.get(i));
}
}

ArrayList<FlowUseCondition> resultList = (ArrayList<FlowUseCondition>) quickSort(begin);
if(resultList==null) resultList = new ArrayList<FlowUseCondition>();
resultList.add(list.get(0));
if(quickSort(end)!=null){
resultList.addAll(quickSort(end));
}
return resultList;
}
posted @ 2018-05-04 14:38  塑料味的美年达  阅读(170)  评论(0编辑  收藏  举报