Skip to content

Instantly share code, notes, and snippets.

@EvolverSwiftUI
Forked from MickhailP/BinarySearch.swift
Created November 27, 2022 08:45
Show Gist options
  • Save EvolverSwiftUI/b3f61cc65ed968d731fafa2878b9d96d to your computer and use it in GitHub Desktop.
Save EvolverSwiftUI/b3f61cc65ed968d731fafa2878b9d96d to your computer and use it in GitHub Desktop.
BinarySearch
import Foundation
func binarySearch(searchArray: [Int],target: Int, lower: Int, upper: Int) -> Int? {
if lower > upper {
return nil
} else {
var middle = (lower + upper) / 2
print(middle)
if searchArray[middle] == target {
return searchArray[middle]
} else if target < searchArray[middle] {
return binarySearch(searchArray: searchArray, target: target, lower: 0 , upper: middle - 1 )
}
else if target > searchArray[middle] {
return binarySearch(searchArray: searchArray, target: target, lower: middle + 1 , upper: upper )
}
}
return nil
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment