NSTimeTnterval 用法系统排序,冒泡排序,选择排序比较
来源:互联网 发布:数据库系统全书 豆瓣 编辑:程序博客网 时间:2024/06/08 18:48
//性能比较: 系统排序速度最快,冒泡排序和选择排序时间差不多, 但同样比系统慢很多很多
//排序次数少不太明显, 次数多就显现出来了
//NSLog(@"�������系统排序�������");
NSTimeInterval aTimer =0;
for (int i =0; i < 10000; i++) {
NSDate *date1 = [NSDate date];
NSMutableArray *array = [NSMutableArray arrayWithObjects:@"v",@"f", @"a",@"c", @"w",nil];
[array sortedArrayUsingSelector:@selector(compare:)];
NSDate *date2 = [NSDate date];
aTimer = [date2 timeIntervalSinceDate:date1] *1000; // 毫秒数要乘以1000, 本身得到的是秒数
}
NSLog(@"♻️♻️♻️系统排序所用时间:毫秒数: %f", aTimer);
//NSLog(@"�������冒泡排序�������");
NSTimeInterval aTimer2 =0;
for (int i =0; i < 10000; i++) {
NSDate *date3 = [NSDate date];
NSMutableArray *array2 = [NSMutableArray arrayWithObjects:@"v",@"f", @"a",@"c", @"w",nil];
int count = (int)[array2 count];
for (int i =0; i < count - 1; i++) {
for (int j =0; j < count - 1 - i; j++) {
if ([array2[j] compare:array2[j + 1]] > 0) {
[array2 exchangeObjectAtIndex:j withObjectAtIndex:j +1];
}
}
}
NSDate *date4 = [NSDate date];
aTimer2 = [date4 timeIntervalSinceDate:date3] *1000;
}
NSLog(@"♻️♻️♻️冒泡排序所用时间:毫秒数: %f", aTimer2);
//NSLog(@"�������选择排序�������");
NSTimeInterval aTimer3 =0;
for (int i =0; i < 10000; i++) {
NSDate *date5 = [NSDate date];
NSMutableArray *array3 = [NSMutableArray arrayWithObjects:@"v",@"f", @"a",@"c", @"w",nil];
int count3 = (int)[array3 count], min =0;
for (int i =0; i < count3 - 1; i++) {
min = i;
for (int j =0; j < count3 - 1 - i; j++) {
if ([array3[j] compare:array3[j + 1]] > 0) {
min = j;
}
if (min != i) {
[array3 exchangeObjectAtIndex:i withObjectAtIndex:min];
}
}
}
NSDate *date6 = [NSDate date];
aTimer3 = [date6 timeIntervalSinceDate:date5] *1000;
}
NSLog(@"♻️♻️♻️选择排序所用时间:毫秒数: %f", aTimer3);
- NSTimeTnterval 用法系统排序,冒泡排序,选择排序比较
- 选择排序与冒泡排序的比较
- 选择排序和冒泡排序的比较
- 选择排序跟冒泡排序的比较
- 比较冒泡排序和选择排序
- 冒泡排序 选择排序
- 冒泡排序、选择排序
- 冒泡排序 选择排序
- 选择排序 冒泡排序
- 冒泡排序/选择排序
- 冒泡排序/选择排序
- 冒泡排序 选择排序
- 选择排序冒泡排序
- 选择排序 冒泡排序
- 冒泡排序、选择排序
- 冒泡排序,选择排序
- 选择排序-【冒泡排序】
- 冒泡排序,选择排序
- 程序员面试题目总结--链表(6)【单链表排序】
- hdu 1233 还是畅通工程
- CodeForces 414B Mashmokh and ACM dp + 决策总数
- 概率统计相关基础知识
- TCO14 1B L2: WolvesAndSheep, brute force
- NSTimeTnterval 用法系统排序,冒泡排序,选择排序比较
- 【三层 架构】——这才是个开始
- Android 使用HttpClient和第三方MIME文件上传类库,实现文件上传
- 程序员面试题目总结--链表(7)【实现单链表交换任意两个元素(不包括表头)】
- hdoj 1022 Train Problem I 【简易STL】
- 队列总结_legend
- <项目一>怎么将数据转换为json格式
- OCP 1Z0 053 258
- 黑马程序员 【】java学习之路——权限修饰简单总结