微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

冒泡排序

核心内容
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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐