dabocaiqq
2020-07-14 15:15
采纳率: 72.7%
浏览 96

高分悬赏:Java语言求高人编写一个完整的调用的例子,利用compareTo来实现快速排序

高分悬赏:Java语言求高人编写一个完整的调用的例子,利用compareTo来实现快速排序

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

2条回答 默认 最新

  • 毕小宝 博客专家认证 2020-08-07 13:44
    最佳回答

    参考代码:

    //一趟快速排序的过程
     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;
        }
    
    
    评论
    解决 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题