冒泡排序与普通排序的区别


 /**
   *个人网址: http://www.lipengfei2013.tk
   * 功能:冒泡排序与普通排序的区别
   */

package www.csdn.lipfbk;

//利用两种方法进行排序,并指出哪种是冒泡排序
public class maopao {
 public static void main(String[] args) {



  System.out.println("普通排序开始执行:");
  int arrs[]={9,8,5,12,4};
  for(int i=0;i<arrs.length;i++){
   for(int j=i;j<arrs.length-1;j++){
    int temp=0;
    if(arrs[i]>arrs[j+1]){
     temp=arrs[i];
     arrs[i]=arrs[j+1];
     arrs[j+1]=temp;
    }
   }
   for(int k=0;k<arrs.length;k++){
    System.out.print(arrs[k]+" ");
   }
   System.out.println();



  }
  
  /**for 循环内,循环步骤为
   * 4 9 8 12 5 
      4 5 9 12 8 
      4 5 8 12 9 
      4 5 8 9 12 
      4 5 8 9 12
      因为比较的顺序每次都是从第一个以此往后比较,而不是相邻的两个进行的比较,所以不符合冒泡排序
   */
  System.out.println("排序完成后输出:");
  for(int i=0;i<arrs.length;i++){



   System.out.print(arrs[i]+" ");
  }
  
  System.out.println();
  
  //真正的冒泡排序
  System.out.println("冒泡排序开始执行:");
  int arrs1[]={9,8,5,12,4};
  for(int i=0;i<arrs1.length;i++){
   for(int j=0;j<arrs1.length-1;j++){



    int temp=0;
    if(arrs1[j]>arrs1[j+1]){
     temp=arrs1[j];
     arrs1[j]=arrs1[j+1];
     arrs1[j+1]=temp;
    }
    /**
     * for 循环里循环的步骤为:



     * 8 5 9 4 12 
        5 8 4 9 12 
        5 4 8 9 12 
        4 5 8 9 12 
        4 5 8 9 12
     */
   }
   for(int k=0;k<arrs1.length;k++){
    System.out.print(arrs1[k]+" ");



   }
   System.out.println();
  }
 }

}







用Java实现 ,冒泡排序与普通排序的区别的更多相关文章

  1. Java版冒泡排序和选择排序

    一.理解说明 1.理解和记忆 冒泡排序:依次定位数组元素,每次只和相邻的且符合条件的元素交换位置. 选择排序:依次在数组的每个位置,通过逐个对比选择出最大或最小的元素. 2.知识点说明 (1)数组是引 ...

  2. java:冒泡排序、选择排序、插入排序实现

    整数排序 给一组整数,按照升序排序,使用选择排序,冒泡排序,插入排序或者任何 O(n2) 的排序算法. 样例 样例 1: 输入: [3, 2, 1, 4, 5] 输出: [1, 2, 3, 4, 5] ...

  3. Java实现冒泡排序,选择排序,插入排序

    冒泡排序: 思想: 冒泡排序重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说排序完成 特点:比较稳定,排序数较小是 ...

  4. java实现冒泡排序,选择排序,插入排序,快速排序(简洁版)及性能测试

    1.冒泡排序是排序里面最简单的了,但性能也最差,数量小的时候还可以,数量一多,是非常慢的. 它的时间复杂度是O(n*n),空间复杂度是O(1) 代码如下,很好理解. public void bubbl ...

  5. 冒泡排序 和 选择排序的 区别 python

    参考:https://www.cnblogs.com/banana201/p/4928733.html ## 冒泡排序法(Bubblesort) ## 所谓排序法,就是对一组无序的序列进行有序的排序( ...

  6. 使用C语言和Java分别实现冒泡排序和选择排序

    经典排序算法--冒泡和选择排序法 Java实现冒泡排序 基本思想是,对相邻的元素进行两两比较,顺序相反则进行交换,这样,每一趟会将最小或最大的元素放到顶端,最终达到完全有序,首先看个动图: 我们要清楚 ...

  7. [Java算法] -- 1. 常用排序之冒泡排序和选择排序

    使用Java语言实现冒泡排序和选择排序 推荐一个数据结构可视化的网站:http://zh.visualgo.net/zh (暂时访问不了) 对排序不太熟悉的朋友,建议去上面的网站学习一下,你将会发现一 ...

  8. java面向对象的冒泡排序,选择排序和插入排序的比较

    这三种排序有俩个过程: 1.比较俩个数据. 2.交换俩个数据或复制其中一项. 这三种排序的时间级别 冒泡排序:比较 (N-1)+(N-2)+...+2+1 = N*(N-1)/2=N2/2 交换  0 ...

  9. 冒泡排序、选择排序、直接插入排序、快速排序、折半查找>从零开始学JAVA系列

    目录 冒泡排序.选择排序.直接插入排序 冒泡排序 选择排序 选择排序与冒泡排序的注意事项 小案例,使用选择排序完成对对象的排序 直接插入排序(插入排序) 快速排序(比较排序中效率最高的一种排序) 折半 ...

随机推荐

  1. 浅谈C中的指针和数组(五)

    前面写了一些C指针和数组的一些知识,但是还有一些很重要的知识没有交代,这里做一个补充. 首先看一下,普通变量(指针也是变量)和数组名查看地址的方式是不同的. 查看数组变量的地址,不需要使用 & ...

  2. Java学习之finally关键字总结

    Java中的final关键字非常重要,它可以应用于类.方法以及变量.这篇文章中我将带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使 ...

  3. nodeJs入门笔记(一)

    node将"HTTP服务器"这一层抽离,直接面向浏览器用户 如PHP运行之前先要配置一个功能强大而复杂的HTTP 服务器,譬如Apache.IIS 或Nginx,还需要将PHP 配 ...

  4. 走进C标准库(4)——"stdio.h"中的putc

    花了点时间把园子弄得好看了点,现在继续. 函数名: putc 功  能: 输出一字符到指定流中 用  法: int putc(int ch, FILE *stream); #define _putc_ ...

  5. TCPL 行计数

    C programming language: P13 行计数 e.g. #include <stdio.h>int main(void){    int c, nb, nt, nl;   ...

  6. MapReduce ---- TD-IDF

    1.TF-IDF TF-IDF(term frequency/inverse document frequency) 的概念被公认为信息检索中最重要的发明.描述单个term与特定document的相关 ...

  7. Referrer 还是 Referer?

    上回我写了一篇文章介绍「Referrer Policy」,有小伙伴看完后问我:Referrer 这个单词到底怎么拼,为什么有时候中间有两个 r,有时候只有一个? 是的,这是一个很有趣的问题,这里就给有 ...

  8. ios jsbrige

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  9. git配置别名

    配置别名   有没有经常敲错命令?比如git status?status这个单词真心不好记. 如果敲git st就表示git status那就简单多了,当然这种偷懒的办法我们是极力赞成的. 我们只需要 ...

  10. discuz函数quote

    public static function quote($str, $noarray = false) { if (is_string($str)) return '\'' . addcslashe ...