Алгоритмы / Поиск

func search(_ arr: [Int], _ x: Int) -> Int
{
    var i = 0
    let count = arr.count
    while i < count {
        if arr[i] == x {
            return i
        }
        i+=1
    }
    return -1
}

var items = [ 2357111317 ]

print(search(items, 1))
//print -1
print(search(items, 7))
//print 3
print(search(items, 19))
//print -1

// *** simplified speed test ***

items = [Int](repeating: 0, count: 1_000_000)
for i in 0 ..< items.count {
    items[i] = i
}
let count = 100
var result = -1

let clock = ContinuousClock()
let time = clock.measure
{
    for _ in 0 ..< count {
        result = search(items, 7777777)
    }
}

print("result is \(result)")
print("seconds is \(time.components.seconds)")
// about 2 seconds