冒泡排序法(算法):
    ①.比较相邻的元素。如果第一个比第二个大,就交换它们两个;
    ②.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;
    ③.针对所有的元素重复以上的步骤,除了最后一个;
    重复步骤1~3,直到排序完成。

public class TestArraySort1{public static void main(String[] args){int[] a = {9,8,6,1,4};/*i      i+1a[0]   a[1]a[1]   a[2]a[2]   a[3]a[3]   a[4]*//*每一轮的比较次数  +  第几轮 = 数组长度每一轮的比较次数 = 数组长度  -  第几轮*/for(int i=0;i<a.length;i++){System.out.print(a[i]+"  ");}System.out.println(); for(int j=1;j<a.length;j++){             //N个数字要排序完成,总共进行N-1趟排序,每i趟的排序次数为(N-i)次,                                for(int i=0;i<a.length-j;i++){            //所以可以用双重循环语句,外层控制循环多少趟,内层控制每一趟的循环次数if(a[i]>a[i+1]){int temp = a[i];a[i] = a[i+1];a[i+1] = temp;}}}for(int i=0;i<a.length;i++){System.out.print(a[i]+"  ");}}
}

  选择排序法思想:
        从数组中找到最小的元素,和第一个位置的元素互换。 从第二个位置开始,找到最小的元素,和第二个位置的元素互换。 … 直到选出array.length-1个较小元素,剩下的最大的元素自动排在最后一位。

public class TestArraySort2{public static void main(String[] args){int[] a = {9,8,6,1,4};/*i        j=i+1    j++   j++   j++ a[0]   vs  a[1]   a[2]   a[3]   a[4]a[1]   vs  a[2]   a[3]   a[4]a[2]   vs  a[3]   a[4]a[3]   vs  a[4]*/for(int i=0;i<a.length;i++){System.out.print(a[i]+"  ");}System.out.println();for(int i=0;i<a.length-1;i++){for(int j=i+1;j<a.length;j++){if(a[i]>a[j]){int temp = a[i];a[i] = a[j];a[j] = temp;}}}for(int i=0;i<a.length;i++){System.out.print(a[i]+"  ");}}
}

冒泡排序法和选择排序法相关推荐

  1. 总结c语言基础算法——冒泡排序法和选择排序法

    1.首先无论何种排序方法其最终目的是按要求将所给数据进行排序.而在C语言中可以有很多排序的方法,这里着重介绍的是常用的较为基础和重要的算法--冒泡排序法和选择排序法. 下面将举一个例子进行讲解: 要求 ...

  2. 浅谈排序算法:冒泡排序法和选择排序法的区别

    之前学习了冒泡排序法和选择排序法,最近被老师问某个道题用的是什么排序法.自己居然答不出来,才发现自己没有真正弄懂,这两个算法的原理和区别,所以····· 1冒泡排序法 1.1什么是冒泡排序法? 顾名思 ...

  3. 冒泡排序法和选择排序法比较(从小到大,升序)

    1.冒泡排序法 冒泡法的基本思想为将相邻的两个数进行比较,并且将较大的数赋值给后面的数.(可以看做将较大的数沉底.) 举个例子,现在我们有5个数,即3 ,7,2 , 1, 5.现在我们需要用冒泡法将它 ...

  4. 使用策略模式的设计方式来实现对数组的排序,提供两种具体的实施策略,冒泡排序法和选择排序法

    package com.Arrays;public interface ArraysSort {public abstract int[] sort(int [] arr); }package com ...

  5. C语言冒泡法和选择排序法

    C语言冒泡法和选择排序法 1.冒泡法代码 #include<stdio.h> int main() {int a[3];int p,i,tmp;for(i=0;i<3;i++)sca ...

  6. c语言函数调用排序用插入法,C语言:编写查找和排序函数(二分查找,冒泡排序,选择排序法,插入排序)...

    任务代码: 二分查找数组的一个数字:(函数法) #include int binarySearch(int a[],int len,int key) { int low=0,high=len-1,mi ...

  7. 在c语言中用冒泡法比较大小,c语言大小排序,用冒泡法和选择排序法

    满意答案 先上选择法和冒泡法: 1.选择法 #include void main() { int i,j,min,temp; int a[10]; printf("请输入十个整数:" ...

  8. C——用冒泡排序法、选择排序法对随机输入的10个整数从小到大排序

    //冒泡排序法 #include <stdio.h> int main() {int i,j,t,a[10];for(i=0;i<10;i++){scanf("%d&quo ...

  9. 经典算法之冒泡排序法与直接选择排序法

    活动地址:21天学习挑战赛 文章目录 一.冒泡排序法 1.基本思想 2.算法步骤 3.代码实践 4.复杂度分析 二.直接选择排序法 1.基本思想 2.算法步骤 3.代码实践 4.复杂度分析 一.冒泡排 ...

最新文章

  1. 技术人如何搭建自己的技术博客
  2. aspose java_Aspose.Cells for Java
  3. 3种纯CSS实现中间镂空的12色彩虹渐变圆环方法
  4. 牛客网【每日一题】5月18日 「土」秘法地震
  5. 使用Docker启动Grafana环境
  6. python线程按照顺序执行_Python3多线程之间的执行顺序问题
  7. 通过方法将汉字转成拼音
  8. 安装activex手机控件_86/BRZ 免“油饼”安装 Defi 机油压力表
  9. 【有关数据库的问题】运行时错误‘3706’:未找到提供程序。该程序可能未正确安装。
  10. Spring IOC源码分析
  11. 不禁网页的浏览器_什么浏览器不屏蔽网站
  12. 24 - 面向对象1
  13. DEDECMS留言薄全站调用方法
  14. CodeForces 1538G : Gift Set 思维 + 二分
  15. 历时54年,完成了1574架飞机生产,“天空女王”波音747正式停产 | 美通社头条...
  16. 从网易云音乐网页版无登陆下载MP3的办法
  17. 安装office2016后文档表格不能显示图标
  18. Vue2的响应式原理
  19. xstream异常com.thoughtworks.xstream.security.ForbiddenClassException
  20. 【北亚数据恢复】DELL EqualLogic存储硬盘坏道数据恢复

热门文章

  1. 为VMware ESXi主机添加本地存储的过程及注意事项之2
  2. 探究操作系统的内存分配(malloc)对齐策略
  3. [收藏]实践参考:parted创建硬盘分区并创建LVM
  4. django orm 数据查询详解
  5. 20145226夏艺华 后门原理与实践
  6. canvas的基础使用。
  7. Linux SSH免密码登录
  8. XL, an extensible programming language, implements concept programming
  9. [翻译]在Asp.net 2.0中操作数据::母板页和站点导航
  10. C/C++指针 数组