我有一个包含像2,4,6等值的数组。现在我想对数组进行排序以找到最大值,我不知道该怎么做。 请帮帮我。 在此先感谢!基于数字的排序数组
回答
NSinteger biggest = [[yourArray objectAtIndex:0] integerValue];
for(int i=1; i<[yourArray count]; i++) {
NSinteger current = [[yourArray objectAtIndex:i] integerValue];
if(current >= biggest) {
biggest = current;
}
}
这会给你数组中最大的元素。
UPDATE
由于@occculus建议你可以尝试快速列举。这里是一个参考How do I iterate over an NSArray?
FIX
你的代码是两个都错了(由卡勒报道)和低效(的objectAtIndex:
冗余呼叫)。修复它,希望你不介意。
Regexident
使用快速枚举会更好。 – occulus 2011-04-06 12:09:46
您不能在数组中存储整数。它们是NSStrings或NSNumbers。无论哪种情况,您都必须将“intValue”添加到[yourArray ...]调用中。 – Kalle 2011-04-06 12:27:31
@Kalle修复它。有些小鸟告诉我,Jenifer在接受之前甚至没有对它进行测试。 :P – Regexident 2011-04-13 13:31:55
您可以通过仅查看每个值来确定最高值。
int highest = INT_MIN;
for (id elem in array)
{
int current = [elem intValue];
if (highest < current)
highest = current;
}
如果你想数组无论如何分类:
NSArray *sorted = [unsorted sortedArrayUsingSelector:@selector(compare:)];
int highest = [[sorted lastObject] intValue];
- 1. 基于数值的Javascript数组排序基于数值的数组排序
- 2. 基于键值排序数据数组
- 3. 基于值的Tcl数组排序
- 4. 基于NSNumber的词典排序数组
- 5. 排序基于密钥的JSON数组
- 6. 基于值的php数组排序器
- 7. 基于多个值对数组排序
- 8. 排序基于嵌套数组列表
- 9. 基于值对数组排序
- 10. 基于两列排序二维数组
- 11. 数组排序基于价值
- 12. 基于重复值排序PHP数组
- 13. PHP的排序基于另一个数组的键值数组
- 14. 基于D中的关联数组排序基于D
- 15. 基于索引数组排序整数数组?
- 16. 按行排序numpy数组和基于原始数组的排序匹配值
- 17. 基于第三个数组的排序多维数组
- 18. 对基于另一个数组的数组进行排序C
- 19. 基于一个int数组排序java中的多个数组
- 20. PHP - 基于排序数组的排序因子:: usort?
- 21. 基于链表的基数排序
- 22. 基于另一个数组排序数组,然后在日期
- 23. 基于“parent_id”将数组排序为多维数组
- 24. 如何基于数组swift对多个数组进行排序?
- 25. 基于数组长度对数组进行排序
- 26. 排序依赖于数组的数组
- 27. 基于关键字排序PHP多维数组?
- 28. 基于关键字排序第二级数组值
- 29. 基于数组的程序
- 30. 基于非数字小排序重新排序表
你并不需要数组排序,找到最大的价值! – occulus 2011-04-06 12:05:43
@Jen - 我建议使用快速排序算法。 – 2011-04-06 12:06:32
您需要在您的问题中提供更多信息。什么样的阵列?一个普通的C风格数组? Objective C风格的数组?这是家庭作业btw吗? – occulus 2011-04-06 12:07:19