最简单的java源代码 最简单的java源代码编写( 四 )


{
newConstructFrame();
}
}
最简单的java源代码你自己慢慢最简单的java源代码的看吧最简单的java源代码!
Java几种简单的排序源代码给你介绍4种排序方法及源码,供参考
1.冒泡排序
主要思路: 从前往后依次交换两个相邻的元素,大的交换到后面,这样每次大的数据就到后面 , 每一次遍历 , 最大的数据到达最后面,时间复杂度是O(n^2) 。
public static void bubbleSort(int[] arr){
for(int i =0; iarr.length - 1; i++){
for(int j=0; jarr.length-1; j++){
if(arr[j]arr[j+1]){
arr[j] = arr[j]^arr[j+1];
arr[j+1] = arr[j]^arr[j+1];
arr[j] = arr[j]^arr[j+1];
}
}
}
}
2.选择排序
主要思路:每次遍历序列,从中选取最小的元素放到最前面,n次选择后,前面就都是最小元素的排列了 , 时间复杂度是O(n^2) 。
public static void selectSort(int[] arr){
for(int i = 0; i arr.length -1; i++){
for(int j = i+1; jarr.length; j++){
if(arr[j]arr[i]){
arr[j] = arr[j]^arr[i];
arr[i] = arr[j]^arr[i];
arr[j] = arr[j]^arr[i];
}
}
}
}
3.插入排序
主要思路:使用了两层嵌套循环 , 逐个处理待排序的记录 。每个记录与前面已经排好序的记录序列进行比较 , 并将其插入到合适的位置,时间复杂度是O(n^2) 。
public static void insertionSort(int[] arr){
int j;
for(int p = 1; parr.length; p++){
int temp = arr[p];//保存要插入的数据
//将无序中的数和前面有序的数据相比,将比它大的数 , 向后移动
for(j=p; j0temp arr[j-1]; j--){
arr[j] = arr[j-1];
}
//正确的位置设置成保存的数据
arr[j] = temp;
}
}
4.希尔排序
主要思路:用步长分组,每个分组进行插入排序,再慢慢减小步长 , 当步长为1的时候完成一次插入排序 , 希尔排序的时间复杂度是:O(nlogn)~O(n2) , 平均时间复杂度大致是O(n^1.5)
public static void shellSort(int[] arr){
int j ;
for(int gap = arr.length/2; gap0 ; gap/=2){
for(int i = gap; iarr.length; i++){
int temp = arr[i];
for(j = i; j=gaptemparr[j-gap]; j-=gap){
arr[j] = arr[j-gap];
}
arr[j] = temp;
}
}
}
关于最简单的java源代码和最简单的java源代码编写的介绍到此就结束了 , 不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

推荐阅读