有没有一种方法可以获取 NSMutableArray 的最大值和最小值
iOS 中有没有一种方法可以让我获取双数字 NSMutableArray 的最大值和最小值。我正在寻找一种已经存在的方法,而不是让我自己对数组进行排序。如果有一种方法可以让我构建到 API 中来对数组进行排序,我也会感兴趣。
谢谢
Is there a way in iOS for me to get the Max and Min values of an NSMutableArray of double numbers. I'm looking for an already existing method, not for me to sort the array my self. If there is a method for me build into the API for me to sort the array that would interest me too.
Thank you
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
如果您想简单地获取最小和最大双精度数:
如果您想简单地对它们进行排序:
NSNumber
类只需使用compare:
即可很好地排序,但如果您需要进行更复杂的排序,您可以使用 -sortUsingComparator: 方法,该方法需要一个块来进行排序。 NSArray 上还有一些方法,它们将返回已排序的新数组,而不是修改当前数组。请参阅 NSArray 和 NSMutableArray 了解更多信息。If you wanted to simply get the min and max doubles:
If you wanted to simply sort them:
The
NSNumber
class will sort nicely just usingcompare:
, but if you need to do more complicated sorting, you can use the-sortUsingComparator:
method which takes a block to do the sorting. There are also methods onNSArray
which will return new arrays that are sorted, instead of modifying the current array. See the documentation for NSArray and NSMutableArray for more information.排序的时间复杂度为 O(nlogn),因此如果您只需要 max 和 min 一次,请不要进行排序。最好的方法是遍历数组并一一比较,这是线性的,即 O(n)。
Sorting is O(nlogn), so if you only want max and min once, please don't do sorting. The best way is to go through the array and compare one by one and that is linear, i.e. O(n).
如果您想获得整数中的最大值,请使用此:-
如果您想获得 NSNumber 中的最大值,请使用此:-
If you want to get max value in integer use this:-
If you want to get max value in NSNumber use this:-