概述
题目:三种排序算法
1. 冒泡排序法 2.选择排序法 3. 插入排序法
由小到大的顺序
备注:网上笔试题,代码是参考网上别人的,具体出处找不到了,请谅解。摘抄记录下来方便日后学习。如果有问题尽请批评指正,希望可以和大神一起交流。
冒泡排序的最好的时间复杂度为O(n),最坏的时间为
O(n^2),算法的平均时间复杂度为O(n^2)。
选择排序法,寻找一组数据的最小值,将其取出放到初始位置,然后再继续寻找,算法的平均时间复杂度为O(n^2)。
插入排序算法的平均时间复杂度为O(n^2)。
public class BubbleSort {
//选择排序
public static void SelectSort(int[] arr) {
int temp;
for (int i = 0; i < arr.length; i++) {
for (int j = i+1; j < arr.length; j++) {
if (arr[i]>arr[j]) {
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
}
//冒泡排序
public static void BubbleSort(int[] arr){
int temp;
for (int i = 0; i < arr.length-1; i++) {
for (int j = 0; j < arr.length-i-1; j++) {
if (arr[j+1]<arr[j]) {
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
//插入排序
public static void InsertSort(int[] arr){
int temp;
for (int i = 1; i < arr.length; i++) {
for (int j = i; (j>0) &&
(arr[j]<arr[j-1]); j--) {
temp=arr[j];
arr[j]=arr[j-1];
arr[j-1]=temp;
}
}
}
public static void main(String[] args) {
int arr[]=new int[] {1,5,3,4,6,8,2,7};
//1.冒泡排序
// BubbleSort.BubbleSort(arr);
//2.选择排序
// BubbleSort.SelectSort(arr);
//3.插入排序
BubbleSort.InsertSort(arr);
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
最后
以上就是细心眼神为你收集整理的三种排序算法题目:三种排序算法的全部内容,希望文章能够帮你解决三种排序算法题目:三种排序算法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复