类别 NSMutableArray 的扩展 Objective-C
Extension for category NSMutableArray Objective-C
我是一名初级程序员,我接到的任务是编写类别 NSMutableArray
的扩展。在谷歌搜索中,我发现的信息很少,也不知道该怎么做。
我需要为 Shell 排序写一个扩展。我可以使用NSSortDescriptor
,但扩展应该给出排序算法,标准的NSSortDescriptor
方法不适用于此。如果有某种普通用户的关联引用以及如何使用它,那真的很有帮助。因为,我发现的 - 不适合我。
所以这里是...
NSMutableArray+Sort.h
#import <Foundation/Foundation.h>
@interface NSMutableArray (Sort)
-(void)sortArrayUsingShellSort;
@end
NSMutableArray+Sort.m
#import "NSMutableArray+Sort.h"
@implementation NSMutableArray (Sort)
-(void)sortArrayUsingShellSort
{
// tasks
// #1. access the unsorted array using self
// #2. sort the array using your shell sort, no one gonna do that for you, you have to do that yourself. Re-arrange the items or the array.
}
@end
一些有用的 link 用于 shell 排序
进入你的
main.m
#import <Foundation/Foundation.h> // not necessary actually, as it is already imported into our NSMutableArray+Sort.h
#import "NSMutableArray+Sort.h"
int main(int argc, char * argv[]) {
NSMutableArray *myArray = [[NSMutableArray alloc] initWithArray:@[
[NSNumber numberWithInt:10],
[NSNumber numberWithInt:3],
[NSNumber numberWithInt:4],
[NSNumber numberWithInt:15]
]];
NSLog(@"array before sorting %@", myArray);
//here goes your sorting category function call
[myArray sortArrayUsingShellSort];
NSLog(@"array after sorting %@", myArray);
}
我是一名初级程序员,我接到的任务是编写类别 NSMutableArray
的扩展。在谷歌搜索中,我发现的信息很少,也不知道该怎么做。
我需要为 Shell 排序写一个扩展。我可以使用NSSortDescriptor
,但扩展应该给出排序算法,标准的NSSortDescriptor
方法不适用于此。如果有某种普通用户的关联引用以及如何使用它,那真的很有帮助。因为,我发现的 - 不适合我。
所以这里是...
NSMutableArray+Sort.h
#import <Foundation/Foundation.h>
@interface NSMutableArray (Sort)
-(void)sortArrayUsingShellSort;
@end
NSMutableArray+Sort.m
#import "NSMutableArray+Sort.h"
@implementation NSMutableArray (Sort)
-(void)sortArrayUsingShellSort
{
// tasks
// #1. access the unsorted array using self
// #2. sort the array using your shell sort, no one gonna do that for you, you have to do that yourself. Re-arrange the items or the array.
}
@end
一些有用的 link 用于 shell 排序
进入你的 main.m
#import <Foundation/Foundation.h> // not necessary actually, as it is already imported into our NSMutableArray+Sort.h
#import "NSMutableArray+Sort.h"
int main(int argc, char * argv[]) {
NSMutableArray *myArray = [[NSMutableArray alloc] initWithArray:@[
[NSNumber numberWithInt:10],
[NSNumber numberWithInt:3],
[NSNumber numberWithInt:4],
[NSNumber numberWithInt:15]
]];
NSLog(@"array before sorting %@", myArray);
//here goes your sorting category function call
[myArray sortArrayUsingShellSort];
NSLog(@"array after sorting %@", myArray);
}