黑马程序员技术交流社区
标题:
OC 冒泡法遍历问题
[打印本页]
作者:
水了个淼
时间:
2014-9-26 09:37
标题:
OC 冒泡法遍历问题
NSArray *persons = @[
@{@"name" : [s1 name],
@"age" :[NSNumber numberWithInt:[s1 age]],
@"grade":[NSNumber numberWithInt:[s1 garde]]},
@{@"name" : [s2 name],
@"age" :[NSNumber numberWithInt:[s2 age]],
@"grade":[NSNumber numberWithInt:[s2 garde]]},
@{@"name" : [s3 name],
@"age" :[NSNumber numberWithInt:[s3 age]],
@"grade":[NSNumber numberWithInt:[s3 garde]]},
@{@"name" : [s4 name],
@"age" :[NSNumber numberWithInt:[s4 age]],
@"grade":[NSNumber numberWithInt:[s4 garde]]},
@{@"name" : [s5 name],
@"age" :[NSNumber numberWithInt:[s5 age]],
@"grade":[NSNumber numberWithInt:[s5 garde]]},
];
for (int i = 0; i < persons.count; i++) {
for (int j = 0; j < persons.count - i -1; j++) {
id temp = nil;
if (persons[j][@"grade"] >persons[j+1][@"grade"] ) {
temp=persons[j+1][@"grade"];
persons[j+1][@"grade"]=persons[j][@"grade"];
persons[j][@"grade"]=temp;
}
}
}
作者:
水了个淼
时间:
2014-9-26 09:38
这个怎么会报错呢 s1 s2 s3 s4 s5 分别是创建的5个Person 对象
作者:
SailY
时间:
2014-9-26 10:01
[s1 name],你确定这个写法正确?
作者:
SailY
时间:
2014-9-26 10:04
#pragma mark - 冒泡排序
void BubbleSort(int a[], int n)
{
for (int i = 0; i < n; i++)
for (int j = i+1; j < n; j++)
if (a[j] > a[i]) {
int temp =a[i];
a[i] = a[j];
a[j] = temp;
}
}
貌似j < persons.count - i -1最后一个数字没有参加比较
作者:
wanyiyuan
时间:
2014-9-26 16:28
SailY 发表于 2014-9-26 10:04
#pragma mark - 冒泡排序
void BubbleSort(int a[], int n)
{
是 array[j] 和 array[ j + 1] 比较吧:L
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2