We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 87bde22 commit 5aef703Copy full SHA for 5aef703
Select Minimum Maximum/MinimumMaximumPairs.swift
@@ -3,16 +3,11 @@
3
*/
4
5
func minimumMaximum<T: Comparable>(_ array: [T]) -> (minimum: T, maximum: T)? {
6
- guard !array.isEmpty else {
7
- return nil
8
- }
9
-
10
- var minimum = array.first!
11
- var maximum = array.first!
+ guard var minimum = array.first else { return nil }
+ var maximum = minimum
12
13
// if 'array' has an odd number of items, let 'minimum' or 'maximum' deal with the leftover
14
- let hasOddNumberOfItems = array.count % 2 != 0
15
- let start = hasOddNumberOfItems ? 1 : 0
+ let start = array.count % 2 // 1 if odd, skipping the first element
16
for i in stride(from: start, to: array.count, by: 2) {
17
let pair = (array[i], array[i+1])
18
0 commit comments