快排时栈溢出异常Exception in thread "main" java.lang.StackOverflowError

错误原因:

Exception in thread “main” java.lang.StackOverflowError

快排出现错误Exception in thread "main"java.lang.StackOverflowError(堆栈溢出错误)。出错原因是在定义数组的初始位置跟结束位置时没有定义他们之间的大小关系,即数组的初始位置start必须小于结束位置end,即在定义排序方法的开始位置添加 if 条件语句。错误如下图所示:
快排时栈溢出异常Exception in thread

解决方法:

在定义排序方法的开始位置添加 if 条件语句。
快排时栈溢出异常Exception in thread

原码展示

package demo4;

import java.util.Arrays;

public class QuickSort {

    public static void main(String[] args) {
        int[] arr = new int[]{3,4,6,7,2,7,2,8,0,9,1};
        quickSort(arr, 0, arr.length-1);
        System.out.println(Arrays.toString(arr));
    }

    public static void quickSort(int[] arr,int start,int end){
        if(start

你可能感兴趣的:(Exception,collections)