[fix] array-smallest-missing-number parameters

master
Furkan Türkal 6 years ago
parent 48b9c99e14
commit 2b9b3a8548
No known key found for this signature in database
GPG Key ID: 3015FE56155820F2

@ -8,29 +8,34 @@
package main
import "fmt"
import "os"
func findFirstMissing (arr []int, start, end int) int {
if(start > end) {
func findFirstMissing(arr []int, start, end int) int {
if start < 0 {
fmt.Println("Start must be greater than 0")
os.Exit(1)
return 0
}
if start > end {
return end + 1
}
if(start != arr[start]) {
if start != arr[start] {
return start
}
mid := (start + end) / 2
if(arr[mid] == mid){
return findFirstMissing(arr, mid + 1, end)
if arr[mid] == mid {
return findFirstMissing(arr, mid+1, end)
}
return findFirstMissing(arr, start, end)
}
func main() {
arr := []int{0, 1, 2, 3, 4, 5, 6, 7, 10}
var n int = len(arr)
fmt.Printf("Smallest missing element is %d", findFirstMissing(arr, 0, n - 1))
}
fmt.Printf("Smallest missing element is %d", findFirstMissing(arr, 0, n-1))
}

Loading…
Cancel
Save