Java实现快速排序

it2024-02-20  56

(4)Java实现快速排序

代码实现

package com.wllarl.suanfa.sort; import java.util.Arrays; public class QuickSort { public static void main(String[] args) { int []array = {23,12,43,56,78,11,211,4}; QuickSort quickSor = new QuickSort(); quickSor.quickSort(array,0,array.length-1); System.out.println(Arrays.toString(array)); } public void quickSort(int[] array,int left,int right){ int l = left; int r = right; int temp = 0; int point = array[(left+right)/2]; while (l < r){ while (array[l] < point){ l++; } while (array[r] > point){ r--; } if (l >= r){ break; } temp = array[l]; array[l] = array[r]; array[r] = temp; if (array[l] == point){ r -= 1; } if (array[r] == point){ l += 1; } } if (l == r){ l++; r--; } if (left < r){ quickSort(array,left,r); } if (right > l){ quickSort(array,l,right); } } }

实验截图· “C:\Program Files\Java\jdk-9.0.4\bin\java.exe” “-javaagent:D:\IntelliJ IDEA 2019.3.3\lib\idea_rt.jar=8111:D:\IntelliJ IDEA 2019.3.3\bin” -Dfile.encoding=UTF-8 -classpath E:\daima\suanfa\out\production\算法练习 com.wllarl.suanfa.sort.QuickSort [4, 11, 12, 23, 43, 56, 78, 211] Process finished with exit code 0

最新回复(0)