码迷,mamicode.com
首页 > 编程语言 > 详细

冒泡排序(数组方法和指针方法)

时间:2016-03-21 01:49:24      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:数组 指针 冒泡排序

技术分享

数组方法:

#include<stdio.h>

#include<stdlib.h>

void bubble_sort(int arr[], int sz )

{

                 int i = 0;

                 int j = 0;

                 for (j = 0; j < sz - 1; j++)    //决定最终排序出来需要冒多少次

                {

                         for (i = 0; i < sz - 1 - j; i++)    //决定一次冒泡需要比较多少次

                           {

                                     if (arr [i] < arr[i + 1])

                                   {

                                            int tmp = arr [i];

                                            arr[i] = arr [i + 1];

                                           arr[i + 1] = tmp;

                                      }

                                }

                }

}


int main()

{

                 int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

                 int i = 0;

                bubble_sort(arr, sizeof(arr) / sizeof (arr[0]));

                 for (i = 0; i < sizeof (arr) / sizeof(arr[0]);i++)

                {

                                printf( "%d  ", arr[i]);

                }

                printf( "\n");

                system( "pause");

                 return 0;

}

指针方法:

if (*(arr + i) < *(arr + i + 1))

    {

                  int tmp = *(arr + i);

                 *( arr + i) = *(arr + i + 1);

                 *( arr + i + 1) = tmp;

      }

要注意的是,要理解数组和指针的不同,还有数组和指针写法上的区别。

冒泡排序法的双层循环的上限要掌握好

冒泡排序(数组方法和指针方法)

标签:数组 指针 冒泡排序

原文地址:http://10921020.blog.51cto.com/10911020/1753292

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!