码迷,mamicode.com
首页 > 其他好文 > 详细

c冒泡排序

时间:2014-09-11 22:08:02      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:ar   for   sp   log   on   c   amp   size   r   

外层循环需要循环和len一样的次数 

//定义一个函数,该函数返回NSString

void bubbleSort(int nums[],unsigned long len)

{

    //控制本轮循环是否发生过交换

    //如果没有发生交换,那么说明该数组已经处于有序状态,可以提前结束排序

    

    BOOL hasSwap = YES;

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

        //将hasSwap设为NO

        hasSwap = NO;

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

            //如果nums[j]大于nums[j+1],交换他们

            if (nums[j]>nums[j+1])

            {

                int tmp = nums[j];

                nums[j] = nums[j+1];

                nums[j+1] = tmp;

                //本轮循环发生交换,将hasSwap设为yes

                hasSwap = YES;

            }

        }

    }

}

 

 

 

int main(int argc, const char * argv[])

{

 

    @autoreleasepool {

        

        int nums[] = {12,2,23,15,-20,11};

        

        

        int len = sizeof(nums)/sizeof(nums[0]);

        

        bubbleSort(nums, len);

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

            printf("%d\n",nums[i]);

        }

    

        // insert code here...

        NSLog(@"Hello, World!");

        

    }

    return 0;

}

c冒泡排序

标签:ar   for   sp   log   on   c   amp   size   r   

原文地址:http://www.cnblogs.com/keyan1102/p/3967232.html

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