控制台显示java冒泡排序流程示例

类:Nums    权限:public
方法:main    权限:public
参数:nums,i,j,num;
参数介绍:
nums,数据类型 int[] ,用来存储 int 型的一系列数组;
i,数据类型 int ,作为 for 循环的循环变量,存储排序比较的轮数;
j,数据类型 int ,作为 for 循环的循环变量,存储该轮排序比较的次数;
num,数据类型 int ,作为两值互换的第三方变量。
方法功能:

定义一个 int[] 数组;
设置一个循环变量 i ,记录比较轮数;
设置一个循环变量 j ,记录该轮比较中的比较次数;

用数组中未排序完成的第一个数字和后面的其他数字进行比较;
如果未排序完成的第一个数字比和他比较的数字小,就交换它们的位置,以保证未排序的第一个数始终是参与比较过的数字中最大的;
循环完成后,用迭代循环输出排序结果。

代码如下:

public class NumsI{
 public static void main (String [] arge){

//定义一个 int 的数具类型数组 nums,并赋予初始值;
 int[] nums = new int[]{12,24,34,14,45,17,65,51,25};

//提示排序方式并用迭代输出数组初始状态;
 System.out.println("冒泡排序演示");
 System.out.print("初始数据 ");
  for (int num :nums){
   System.out.print(num + " ");
  }
  System.out.println();

//设置一个循环,用来记录比较轮数;
  for (int i = 0; i < nums.length-1; i++ ){

//设置一个循环,记录该轮比较中的比较次数;  
   for(int j =0;j < nums.length-1-i; j++){

//用 nums[] 数组中前面的值与它后面的值比较,如果后面的值比它大就执行下面代码块;
    if(nums[j]<nums[j+1]){

//对 nums[] 数组中的进行交换;
     int num = nums[j];
     nums[j] = nums[j+1];
     nums[j+1] = num;

//输出两个交换位置的值;
     System.out.print(nums[j+1] + "和" + nums[j] + "换位置"+" ");    
    }else{//如果没有交换则打印空格,用来保持输出格式工整;
     System.out.print("  ");
    }
    //用迭代循环输出本次排序完成后的结果;
    for (int num :nums){
     System.out.print(num + " ");
    }
    //提示进行了一次比较;
    System.out.println("进行了一次比较" );

}

//提示进行了一轮比较;
   System.out.println("本轮比较结束");
  }

//提示比较完备并用迭代输出结果;
  System.out.println("完毕");
  for (int num :nums){
  System.out.print(num +" ");
  }
 }
}

(0)

相关推荐

  • java控制台输出百分比进度条示例

    System.out.print("\b") 会在控制台下往回删掉一个字符,如果你想回删多个字符就打印多个 "\b" 复制代码 代码如下: public static void main(String[] args) throws Exception {    System.out.print("Progress:");    for (int i = 1; i <= 100; i++) {        System.out.print(

  • Java实现控制台输出两点间距离

    计算两点之间的距离然后在控制台输出,这个题目还是挺简单的.下面我们来看看具体代码. package com.swift; import java.util.Scanner; public class PToP { public static void main(String[] args) { Scanner scan=new Scanner(System.in); System.out.println("请输入第一个点的坐标值x1"); Double x1=Double.parseD

  • Java控制台输入数组并逆序输出的方法实例 原创

    输入一个数组,然后颠倒次序进行输出,这种算法在程序开发中经常用到,下面我们通过一个小实例来看看怎么实现在控制台输入一个数组,并让其逆序输出的. 源码: import java.util.Scanner; public class Test01 { public static void main(String[] args){ System.out.println("请输入五个数"); int[]l=new int [5]; for(int i=0;i<5;i++) l[i]=ne

  • Java从控制台读入数据的几种方法总结

    这里记录Java中从控制台读入信息的几种方式,已备后查! (1)JDK 1.4(JDK 1.5和JDK 1.6也都兼容这种方法) public class TestConsole1 { public static void main(String[] args) { String str = readDataFromConsole("Please input string:); System.out.println("The information from console: + st

  • java从控制台接收一个数字的实例详解

    java从控制台接收一个数字的实例详解 功能: 从控制台接收一个数 实现代码: import java.io.*; //引入一个IO流的包 public class helloworld1 { public static void main(String args[]) { try{ //输入流,从键盘接收数 InputStreamReader isr=new InputStreamReader(System.in); BufferedReader br=new BufferedReader(i

  • java控制台输入示例分享

    java控制台输入有如下几个方法 1.JDK 1.4 及以下版本读取的方法 JDK 1.4 及以下的版本中要想从控制台中输入数据只有一种办法,即使用System.in获得系统的输入流,再桥接至字符流从字符流中读入数据.只能读取字符串,若需要读取其他类型的数据需要手工进行转换.代码如下: 复制代码 代码如下: BufferedReader br = new BufferedReader(new InputStreamReader(System.in));String str = null;try{

  • 控制台显示java冒泡排序流程示例

    类:Nums    权限:public方法:main    权限:public参数:nums,i,j,num;参数介绍:nums,数据类型 int[] ,用来存储 int 型的一系列数组:i,数据类型 int ,作为 for 循环的循环变量,存储排序比较的轮数:j,数据类型 int ,作为 for 循环的循环变量,存储该轮排序比较的次数:num,数据类型 int ,作为两值互换的第三方变量.方法功能: 定义一个 int[] 数组:设置一个循环变量 i ,记录比较轮数:设置一个循环变量 j ,记录

  • Java控制流程示例代码详解

    目录 用户交互Scanner.Scanner进阶使用 用户交互Scanner Scanner进阶使用 顺序结构 选择结构* if选择结构 Switch选择结构 循环结构* while循环 do..while循环 for循环 增强型for循环 break&continue* 练习 用户交互Scanner.Scanner进阶使用 用户交互Scanner ​ 之前我们学习的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入.java.util.Sca

  • java 串口通信实现流程示例

    1.下载64位rxtx for java 链接:http://fizzed.com/oss/rxtx-for-java 2.下载下来的包解压后按照说明放到JAVA_HOME即JAVA的安装路径下面去 3.在maven的pom.xml下添加 <dependency> <groupId>org.rxtx</groupId> <artifactId>rxtx</artifactId> <version>2.1.7</version&g

  • Java开发druid数据连接池maven方式简易配置流程示例

    目录 1.pom.xml文件引入druid和数据库连接jar包 2.jdbc.properties配置 3.ibatis-config.xml关于mybatis的参数配置 4.spring-mybatis.xml整合文件配置 5.web.xml配置检测访问 禁止访问的ip 6.根据需要配置各类监控Spring-mvc.xml 7.可选安全的加密操作 数据库加密 8.访问方式 1.pom.xml文件引入druid和数据库连接jar包 <properties> <druid.version&

  • JAVA控制流程break continue的示例代码

    JAVA流程控制中有相关代码可以终止整个流程的进程,他们就是(break和continue) break:在任何循环的主体部分上,都可以使用break语句,他的作用是用于强行结束当前语句,不执行剩余语句的功能. continue:在任何循环的主体部分上,他的作用是用于终止某次循环的过程或者可以解释是:跳过循环中未执行的语句,跳过执行接下来的语句. 下面看下JAVA控制流程break continue的代码介绍: package com.kuang.base.struct顺序结构; public

  • springboot2.2 集成 activity6实现请假完整流程示例详解

    新手学习记录.写在springboot test 示例  示例代码地址看结尾.后面有带页面的示例. SpringBoot Test无页面简单示例 员工请假流程 员工发起申请,附带请假信息(请假几天) 单位领导审批,如果通过,交付经理审批,不通过,重新申请 经理审批,如果请假天数不超过三天,经理1审批 如果请假天数在3-5天,经理3审批 超过5天,经理2审批 经理审批通过,流程结束,经理审批不通过,员工重新申请 流程图 代码 activiti.cfg.xml为必须文件且数据库连接正确,否则Proc

  • springboot2.2 集成 activity6实现请假流程(示例详解)

    新手学习记录.写在springboot test 示例  示例代码地址看结尾.后面有带页面的示例. SpringBoot Test无页面简单示例 员工请假流程 员工发起申请,附带请假信息(请假几天) 单位领导审批,如果通过,交付经理审批,不通过,重新申请 经理审批,如果请假天数不超过三天,经理1审批 如果请假天数在3-5天,经理3审批 超过5天,经理2审批 经理审批通过,流程结束,经理审批不通过,员工重新申请 流程图 代码 activiti.cfg.xml为必须文件且数据库连接正确,否则Proc

  • Tomcat启动核心流程示例详解

    目录 一.Tomcat的启动核心流程 1.启动的入口 2.init方法 3.load方法 4.start方法 5.核心流程的总结 一.Tomcat的启动核心流程 前面给大家介绍了Tomcat中的生命周期的设计,掌握了这块对于我们分析Tomcat的核心流程是非常有帮助的,也就是我们需要创建相关的核心组件,比如Server,Service肯定都绕不开生命周期的方法. 1.启动的入口 你可以通过脚本来启动Tomcat服务(startup.bat),但如果你看过脚本的命令,你会发现最终调用的还是Boot

  • python人工智能算法之决策树流程示例详解

    目录 决策树 总结 决策树 是一种将数据集通过分割成小的.易于处理的子集来进行分类或回归的算法.其中每个节点代表一个用于划分数据的特征,每个叶子节点代表一个类别或一个预测值.构建决策树时,算法会选择最好的特征进行分割数据,使每个子集中的数据尽可能的归属同一类或具有相似的特征.这个过程会不断重复,类似于Java中的递归,直到达到停止条件(例如叶子节点数目达到一个预设值),形成一棵完整的决策树.它适合于处理分类和回归任务.而在人工智能领域,决策树也是一种经典的算法,具有广泛的应用. 接下来简单介绍下

  • Android 应用程序的启动流程示例详解

    目录 应用进程的启动流程 1.ActivityStackSupervisor.startSpecificActivity 2.ATMS.startProcessAsync 3.LocalService.startProcess 4.startProcessLocked函数 5.ProcessList.startProcessLocked 6.ProcessList.startProcessLocked重载 7.ProcessList.startProcess 8.ZygoteState.star

随机推荐