问题描述
排序的思想我会,就是用java语言写不出来,希望高手帮忙写一下,最好在关键的字段带些注释。
解决方案
解决方案二:
桶排序是什么我先股沟一下
解决方案三:
publicclassBucketSorter{publicvoidsort(int[]keys,intfrom,intlen,intmax){int[]temp=newint[len];int[]count=newint[max];for(inti=0;i<len;i++){count[keys[from+i]]++;}//calculatepositioninfofor(inti=1;i<max;i++){count[i]=count[i]+count[i-1];//thismeanshowmanynumberwhichislessorequalsthani,thusitisalsoposition+1}System.arraycopy(keys,from,temp,0,len);for(intk=len-1;k>=0;k--)//fromtheendingtobeginningcankeepthestability{keys[--count[temp[k]]]=temp[k];//position+1=count}}/***@paramargs*/publicstaticvoidmain(String[]args){int[]a={1,4,8,3,2,9,5,0,7,6,9,10,9,13,14,15,11,12,17,16};BucketSortersorter=newBucketSorter();sorter.sort(a,0,a.length,20);//actuallyis18,but20willalsoworkfor(inti=0;i<a.length;i++){System.out.print(a[i]+",");}}}
解决方案四:
学习LS的了!