iOS數組快速排序 – iPhone手機開發技術文章 iPhone軟體開發教學課程


歡迎訪問我的新博客: 開發者說

對數組元素排序是使用任何編程語言都會遇到的一個問題,其中大部分已經提供瞭一些很方便的排序方法供我們使用,那麼iOS開發中有哪些方法可以讓我們實現對數組元素快速排序呢?

先定義一個數組,然後對其中元素進行排序:

NSArray *originalArray = [NSArray arrayWithObjects:[NSNumbernumberWithInt:5],

[NSNumber
numberWithInt:6],

[NSNumber
numberWithInt:3],

[NSNumber
numberWithInt:4],

[NSNumber
numberWithInt:1],

[NSNumber
numberWithInt:2],

nil];

方法1:NSComparator

NSArray *sortedArray = [originalArray sortedArrayUsingComparator:^(NSNumber *number1,NSNumber *number2) {

int val1 = [number1 intValue];

int val2 = [number2 intValue];

if (val1 > val2) {

returnNSOrderedAscending;

} else {

return NSOrderedDescending;

}

}];

NSLog(@”%@”, sortedArray);

方法2.NSSortDescriptor

NSSortDescriptor *descriptor = [[NSSortDescriptoralloc]initWithKey:nilascending:YES];

NSArray *sortArray = [NSArrayarrayWithObjects:descriptor,nil];

NSArray *sortedArray = [originalArray sortedArrayUsingDescriptors:sortArray];

NSLog(@”%@”, sortedArray);

另:此博客將會慢慢停止更新,歡迎訪問我的新博客devsay.com進行技術探討。

發佈留言