Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void quickSort(List<Map<String,Integer>> list){
- sort(list,0,list.size()-1);
- }
- private void sort(List<Map<String,Integer>> list, int from, int to){
- if(from <to){
- int pivot=from;
- int left=from+1;
- int right =to;
- Map<String, Integer> mapValue=list.get(pivot);
- // Map.Entry<String,Integer> entry=mapValue.entrySet().iterator().next();
- int pivotValue=0;
- for (Map.Entry<String, Integer> entryPivot: mapValue.entrySet()){
- pivotValue=entryPivot.getValue();
- }
- // int pivotValue=entry.getValue();
- while(left<=right){
- // left <= to -> limit protection
- Map<String, Integer> mapValueLeft=list.get(left);
- // Map.Entry<String,Integer> entryLeft= mapValueLeft.entrySet().iterator().next();
- int valueLeft=0;
- int valueRight=0;
- for(Map.Entry<String,Integer> entryLeft: mapValueLeft.entrySet()){
- valueLeft= entryLeft.getValue();
- }
- while(left <=to && pivotValue >= valueLeft){
- left++;
- }
- // right > from -> limit protection
- Map<String, Integer> mapValueRight=list.get(right);
- // Map.Entry<String,Integer> entryRight= mapValueRight.entrySet().iterator().next();
- for(Map.Entry<String,Integer> entryRight: mapValueRight.entrySet()){
- valueRight= entryRight.getValue();
- }
- while ((right > from && pivotValue < valueRight)){
- right --;
- }
- if (left < right){
- Collections.swap(list,left,right);
- }
- }
- Collections.swap(list,pivot, left -1);
- sort(list, from, right -1);
- sort(list, right + 1, to);
- }
- }
- 01-31 10:53:23.095 1378-1378/usa.com.myapp E/AndroidRuntime: FATAL EXCEPTION: main
- Process: usa.com.myapp, PID: 1378
- java.lang.StackOverflowError
- at java.util.HashMap$EntryIterator.<init>(HashMap.java:841)
- at java.util.HashMap$EntryIterator.<init>(HashMap.java:841)
- at java.util.HashMap.newEntryIterator(HashMap.java:909)
- at java.util.HashMap$EntrySet.iterator(HashMap.java:954)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:369)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:401)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:400)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:401)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:400)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:400)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:401)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:401)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:401)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:401)
- at usa.com.myapp.fragment.MyFragment.sort(MyFragment.java:400)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement