排序思路:
1 子问题,一趟排序把最大的数排到末尾
2 外层循环控制排序次数,内层循环控制比较次数。外层循环排序次数的减少即是问题规模的缩小
- (void)bubbleSort:(NSMutableArray *)arrMu count:(NSUInteger)count
{
if(count ==0|| count ==1) {
//终止条件,出口
return;
}
for(int i =0; i< count-1; i++) {
if([arrMu[i]integerValue]>[arrMu[i+1]intValue]) {
idob1= arrMu[i+1];
arrMu[i+1] = arrMu[i];
arrMu[i] = ob1;
}
}
//缩小规模
[self bubbleSort:arrMu count:count-1];
}
调用
NSArray* arr =@[@1,@3,@5,@4,@2];
NSMutableArray *arrM = [[NSMutableArray alloc] initWithArray:arr];
[self bubbleSort:arrM count:[arrMcount]];
网友评论