美文网首页
java中的冒泡排序、for循环的嵌套使用以及接口与抽象类的区别

java中的冒泡排序、for循环的嵌套使用以及接口与抽象类的区别

作者: 朱芳芳 | 来源:发表于2017-03-13 20:49 被阅读0次

    一、java冒泡排序。

    java中的冒泡排序为一种简单的交换排序方法。其基本思路是从头开始扫描需要排序的元素,在扫描的过程中依次的对相邻的元素进行比较,将关键字值大的元素后移,每经过一趟排序后,关键值最大的元素将移到末尾,此时记下该元素的位置,下一趟排序只需要比较到此位置,直到所有的元素都已经有序排序。

    代码如下:

    public class Maopao{

             public static void main(String[] args){  

                    int[] a = {3,6,1,5,7,2,0,8}; 

                    int aa = a.length-1; 

                    for(int i = 0;i<len;i++){

                    for(int k = 0;k<len-i;k++){

                    if(a[i]>a[i+1]){

                    int temp = a[i+1];

                    a[i+1] = a[i];

                     a[i] = temp;

                          } 

                   }

             }

    for(int e:a){

            System.out.println(e)

       }

    }

    在cmd中利用javac编译结果如下图所示:

    {0,1,2,3,5,6,7,8}

    一般地,对n个元素进行冒泡排序,总共需要进行n-1趟,第一趟需要比较n-1次,第二趟需要比较n-2次,第i趟需要比较n-i次。

    (第一个for循环为循环的趟数,第二个for循环为每趟比较的次数);

    二、for循环以及for循环的嵌套使用。

    1、for循环;

    for循环的意思就是让程序重复地执行某些语句。在程序设计时,常常需要处理大量的重复动作,采用循环结构可以降低程序书写的长度和复杂度,可使复杂问题简单化,提高程序的可读性和执行速度。其中,for循环就是循环结构的一种,另外还有while循环和do-while循环语句。但是for循环是开发者明确知道了循环次数。

    (for循环嵌套用我自己的大白话来说就是一个外圈的for程序里面一个套着一个小的for程序,如果在范围内就来回运行计算,超出了就跳出等待了,反正就是各种for的包含运行差不多的样子)

    For循环格式如下:

    for(赋初值;判断条件;赋值加减){

    执行语句

    }

    2、for循环嵌套;

    循环语句的嵌套

    一个循环结构内可以含有另一个循环,称为循环嵌套,又称多重循环。常用的循环嵌套是二重循环,外层循环称为外循环,内层循环称为内循环。

    双重循环的结构:

    for (循环变量初始化;终止条件表达式;循环变量的增量)

    {

    语句或语句块;

    for(循环变量初始化;终止条件表达式;循环变量的增量)

    {

    语句或语句块;

    }

    }

    上面的结构共有两个for语句组成,它们之间的层次关系是一个套住另一个,我们把这种关系叫做嵌套关系,注意:这种层次关系是唯一的,不可改变的。如下图:

    正常的5行5列:

    左上角的直角三角形:

    左下角的直角三角形:

    右上角的直角三角形(这里多了一个for循环是因为前面需要空格,所有该循环负责的就是空出前面的空来。下面同理)

    左下角的直角三角形:

    三、抽象类与接口的区别;

    抽象类和接口都用于实现抽象,可以声明抽象方法。 抽象类和接口都不能被实例化。但是在下面给出的抽象类和接口之间有许多区别。

    简单地说,抽象类实现了部分抽象(0到100%),而接口实现了完全抽象(100%)。

    相关文章

      网友评论

          本文标题:java中的冒泡排序、for循环的嵌套使用以及接口与抽象类的区别

          本文链接:https://www.haomeiwen.com/subject/frsqnttx.html