冒泡排序

核心内容
1、冒泡程序C语言版和Java版

好长时间没有写博客了,写博客的时候总是可让1个人静下心来,今天学习的是冒泡排序。
冒泡排序的原理以下图所示:

这里写图片描述


C语言版代码示例:

# include <stdio.h>


void sort(int *a,int len)
{
     for (int i=1; i<len; i++)
     {
         for (int j=0; j<len-i; j++)
         {

             if (a[j] > a[j+1])
             {
                 int tmp;
                 tmp = a[j];
                 a[j] = a[j+1];
                 a[j+1] = tmp;
             }
         }
     }

     for (int k=0; k<len; k++)
     {
         printf("%d\t",a[k]);
     }

}
int main()
{
     int a[5] = {10,20,-10,-50,60};

     sort(a,5);

     return 0;
}

运行结果:

这里写图片描述


Java语言代码示例:

public class App1 
{
    public static void main(String[] args)
    {
       int[] a = {10,60,-90,70};

       sort(a,a.length);//数组的名字实际上是数组的首元素的地址

    }
    public static void sort(int a[],int len)//a在这里面实际上是1个指针变量
    {
           for (int i=1; i<len; i++)  //5个数需要比较4轮
           {
               for (int j=0; j<len-i; j++)//每轮需要比较n-i次
               {
                   if (a[j] < a[j+1])
                   {
                       int tmp;
                       tmp = a[j];
                       a[j] = a[j+1];
                       a[j+1] = tmp;
                   }
               }       
           } 
           for (int k=0; k<len; k++)
           {
               System.out.println(a[k]);
           }
    }
}

运行结果:

70
60
20
10
⑼0

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...