1、冒泡排序

public class BoSort {/*** 交换* @param arr* @param a* @param b*/public static void swap(int[] arr, int a, int b) {int temp = arr[a] ;arr[a] = arr[b];arr[b] = temp;}/*** 核心排序* @param arr*/public static void posort(int arr[]) {for (int i = 0; i < arr.length; i++) {for (int j = 0; j < arr.length - i - 1; j++) {if (arr[j] > arr[j + 1]) {swap(arr,j,j+1);}}}}/*** 打印输出* @param arr*/public static void print( int arr[]) {for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+" ");}}public static void main(String[] args) {int arr[] = {1, 4, 7, 0, 5, 4, 9, 7,};posort(arr);print(arr);}
}

View Code

2、直接排序

public class DirectSort {public static void swap(int[] arr, int a, int b) {int temp = arr[a] ;arr[a] = arr[b];arr[b] = temp;}public static void Directsort(int arr[]) {for (int i = 0; i < arr.length-1; i++) {for (int j = i; j >=0; j--) {if (arr[j] > arr[j+1]){swap(arr,j,j+1);}}}}public static void print( int arr[]) {for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+" ");}}public static void main(String[] args) {int arr[] = {1, 4, 7, 0, 5, 4, 9, 7,};Directsort(arr);print(arr);}
}

View Code

3、选择排序

public class SelectSort {public static void swap(int[] arr, int a, int b) {int temp = arr[a] ;arr[a] = arr[b];arr[b] = temp;}public static void selectSort(int arr[]) {for (int i = 0; i < arr.length-1; i++) {int min = i;for (int j = i; j < arr.length; j++) {if (arr[min] > arr [j]){min = j;}}if (min != i){swap(arr,min,i);}}print(arr);}public static void print( int arr[]) {for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+" ");}}public static void main(String[] args) {int arr[] = {1, 4, 7, 0, 5, 4, 9, 7,};selectSort(arr);}
}

View Code

转载于:https://www.cnblogs.com/karrya/p/10846536.html

算法排序代码(简单排序)相关推荐

  1. 数据结构 排序【简单排序(冒泡、插入)、希尔排序、堆排序、排序方法的综合比较、2套 排序汇总代码】

    目   录 第9章 排序(上) 9.1 简单排序(冒泡.插入) 1.前提 2.简单排序(冒泡排序) 3.简单排序(插入排序) 4.时间复杂度下界 9.2 希尔排序 9.3 堆排序 排序方法综合比较 排 ...

  2. java选择排序代码_Java排序算法总结之选择排序

    本文实例讲述了Java排序算法总结之选择排序.分享给大家供大家参考.具体分析如下: 选择排序的基本操作就是每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部 ...

  3. 【数据结构笔记32】排序算法概述、简单排序(冒泡排序、插入排序)、逆序对

    本次笔记内容: 9.1.1 概述 9.1.2 冒泡排序 9.1.3 插入排序 9.1.4 时间复杂度下界 文章目录 排序算法前提条件 冒泡排序 插入排序 时间复杂度下界 逆序对(inversion) ...

  4. 疯子的算法总结(六) 简单排序总 选择排序+插入排序+比较排序+冒泡排序

    一.数组的排序算法 1.选择排序 选择排序是指每次选择所需排序数组中的最大值或者最小值(根据排序方式选择,从大到小选最大,从小到大选最小),将这个元素与前面没有进行排序的元素交换. 下面以1 4 2 ...

  5. 排序_简单排序_选择排序

    选择排序是有三个记录值,其中一个记录值标记着需要比较的数组的第一个值,也是变换后的最小值.其中两个记录值记录需要比较的两个对象,而且记录临时最小值的位置和记录另一个还未比较的数据. public cl ...

  6. 冒泡排序c++代码_八大排序算法(解释+代码+结果+算法优化)

    >>>欢迎点赞,收藏,转发! 评论区获取源代码与更多更全干货!<<< 排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,不需要访问外存便能完成 ...

  7. 算法系列【希尔排序】篇

    常见的内部排序算法有:插入排序.希尔排序.选择排序.冒泡排序.归并排序.快速排序.堆排序.基数排序等.用一张图概括: 关于时间复杂度: 1.     平方阶 (O(n2)) 排序各类简单排序:直接插入 ...

  8. 《Algorithm算法》笔记:元素排序(2)——希尔排序

    <Algorithm算法>笔记:元素排序(2)--希尔排序 Algorithm算法笔记元素排序2希尔排序 希尔排序思想 为什么是插入排序 h的确定方法 希尔排序的特点 代码 有关排序的介绍 ...

  9. c语言数据结构-算法篇之选择排序

    文章目录 前言 一.选择排序是什么? 二.选择排序 代码 前言 排序方法是一种重要的,基本的算法.排序的方法很多,本章就介绍选择排序 一.选择排序是什么? 第一次从R[0]~R[n-1]中选取最小值, ...

  10. 十大排序算法:冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、堆排序、计数排序、桶排序、基数排序

    冒泡排序.选择排序.插入排序.希尔排序.归并排序.快速排序.堆排序.计数排序.桶排序.基数排序的动图与源代码. 目录 关于时间复杂度 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 ...

最新文章

  1. Python使用matplotlib可视化多个不同颜色的折线图、通过FontProperties为可视化图像配置中文字体可视化、并指定字体大小
  2. 结构体中的malloc 与 free
  3. c语言考试算法,c语言考试常用算法docx.docx
  4. SmartDraw2008破解过程总结
  5. 台湾印象之一:金马奖之夜
  6. 光源时间_缩短背光源的使用寿命的原因
  7. 【Java】判断学生成绩等级
  8. V 神呼吁宽大处理,以太坊开发者 Virgil Griffith 被判入狱 63 个月
  9. JavaScript高性能开发的十条建议
  10. 如何在没有RTDS硬件下使用RSCAD进行仿真研究
  11. 迅雷:游移的4亿用户帝国
  12. 深度学习常用算子(一)
  13. C++ 惯用法之 Nifty Counter
  14. 安卓技术实战01 第一个安卓APP案例
  15. 【ol-cesium】OpenLayers与Cesium的二三维联动
  16. BUU-Crypto-世上无难事
  17. [Latex] 插入图片 | 插入表格 | 符号、文本粗体 | 单栏、双栏添加行号 | 添加空格 | 注释快捷键 | 维度 | 脚注 | 公式 | 分点 |
  18. build.gradle笔记
  19. AR、VR、云计算、大数据、区块链、AI编程技术选择和区分
  20. vb怎么做根号计算机,VB编写的根号化简程序

热门文章

  1. 全网首发:There is an incompatible JNA native library installed on this system/6.1.2/4.0.1
  2. You have to specify ‘-keep‘ options for the shrinking step
  3. 全网首发:Could NOT find JNI (missing: JAVA_AWT_INCLUDE_PATH) 解决办法
  4. 新句子:没有谁比我更懂XX,抓普也不行
  5. 系统内存太少,VirtualBox无法启动虚拟机
  6. 由0.1+0.2-0.3不等于0说起
  7. C读取INI的代码实例
  8. 用python写二维码_Python用5行代码写一个自定义简单二维码
  9. 红绿3d眼镜与红蓝3d眼镜区别_佩极定制眼镜青少年3D打印定制系列全新发布
  10. 小车自动往返工作原理_自动化控制灌溉工作原理