高分悬赏:Java语言求高人编写一个完整的调用的例子,利用compareTo来实现快速排序
2条回答 默认 最新
关注
参考代码:
//一趟快速排序的过程 public static int procedure(Object[] arr,int start,int end){ Object flag = arr[start]; //上述文字中描述的枢轴记录,通常是第一个记录即arr[start] Object temp = null; //start =end 时,一趟快速排序结束 while(start < end){ while(start < end && arr[end].hashCode() >= flag.hashCode()){ end--; } temp = arr[start]; arr[start] = arr[end]; arr[end] = temp; while(start < end && arr[start].hashCode() <= flag.hashCode()){ start++; } temp = arr[start]; arr[start] = arr[end]; arr[end] = temp; } //返回start值,start值为整个数组前半区和后半区的分隔坐标 return start; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报