冒泡排序 publicstaticvoidbubbleSort(int〔〕arr){ for(inti0;iarr。length1;i){ for(intj0;jarr。lengthi1;j){ if(arr〔j〕arr〔j1〕){ inttemparr〔j〕; arr〔j〕arr〔j1〕; arr〔j1〕 } } } } 选择排序 publicstaticvoidselectionSort(int〔〕arr){ for(inti0;iarr。length1;i){ intminI for(intji1;jarr。j){ if(arr〔j〕arr〔minIndex〕){ minI } } if(minIndex!i){ inttemparr〔i〕; arr〔i〕arr〔minIndex〕; arr〔minIndex〕 } } } 插入排序 publicstaticvoidinsertionSort(int〔〕arr){ for(inti1;iarr。i){ intkeyarr〔i〕; intji1; while(j0arr〔j〕key){ arr〔j1〕arr〔j〕; j; } arr〔j1〕 } } 快速排序 publicstaticvoidquickSort(int〔〕arr,intlow,inthigh){ if(lowhigh){ intpivotpartition(arr,low,high); quickSort(arr,low,pivot1); quickSort(arr,pivot1,high); } } privatestaticintpartition(int〔〕arr,intlow,inthigh){ intpivotarr〔high〕; intilow1; for(j){ if(arr〔j〕pivot){ i; inttemparr〔i〕; arr〔i〕arr〔j〕; arr〔j〕 } } inttemparr〔i1〕; arr〔i1〕arr〔high〕; arr〔high〕 returni1; } 这四种方法是Java中常用的排序方法,他们在不同的情况下的时间复杂度和空间复杂度也不同,您可以根据不同的情况选择最适合的排序方法。在编写代码时,需要根据实际情况考虑时间复杂度和空间复杂度,并在保证代码可读性的前提下优化代码。此外,对于大型数据集,使用多线程排序算法或使用Java集合框架中的排序算法,也可以提高排序效率。