三种排序算法
来源:互联网 发布:淘宝如何找货源 编辑:程序博客网 时间:2024/06/09 16:04
题目:三种排序算法
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]);}} }
阅读全文
0 0
- 三种排序算法
- 三种排序算法
- 三种排序算法
- 三种排序算法小结
- 三种简单排序算法
- 三种基本排序算法+快速排序
- 三种排序算法(归并排序、快速排序,堆排序)
- 算法:三种简单排序算法
- 排序算法(三):堆排序
- 排序算法三:插入排序
- 排序算法三 希尔排序
- 排序算法三:冒泡排序
- 排序算法(三) - 交换排序
- 排序算法三归并排序
- 排序算法(三)-插入排序
- 三种简单排序算法及其对比
- 三种排序算法的比较
- Java的三种排序算法
- xxx
- iOS 关于sim卡
- Android 知识点记录
- 关于contiki中进程间沟通时使用到的data参数
- FFmpeg日志相关
- 三种排序算法
- Gradle命令和配置 标签: AndroidGradle命令配置 2016-03-11 09:32 17174人阅读 评论(5) 收藏 举报 分类: 开发工具(9) 版权声明:本文为博主原创文
- ADB Shell Command
- R内置常数(Built-in Constants)
- 删除无效服务
- WPF InkCanvas MouseDown触发 MouseUp不触发问题
- 分布式订单号一
- mysql根据查询插入数据
- template模板二