您的位置:首页 > 移动开发 > Objective-C

Object-c冒泡排序

2016-10-20 22:34 211 查看
排序算法有好多中:选择排序、快速排序、希尔排序、堆排序等等,这里主要是简单的实现Object-c下的冒泡排序,这里添加了一个变量hasSwap,在大多数排序中可以减少部分判断次数,另外在交换的时候使用了点技巧,可以减少一个变量。

//冒泡排序
void bubbleSort(int *nums,int length){
BOOL hasSwap = YES;
for (int i=0; i<length && hasSwap; i++) {
hasSwap = NO;
for (int j=0; j<length-1-i; j++) {
if (nums[j] > nums[j+1]) {
nums[j] = nums[j] + nums[j+1];
nums[j+1] = nums[j] - nums[j+1];
nums[j] = nums[j] - nums[j+1];
hasSwap = YES;
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  冒泡排序