# Golang sort.SearchInts() Function with Examples

Golang | sort.SearchInts() Function: Here, we are going to learn about the SearchInts() function of the sort package with its usages, syntax, and examples.
Submitted by IncludeHelp, on September 11, 2021

## sort.SearchInts()

The SearchInts() function is an inbuilt function of the sort package which is used to search for the given element (x) in a sorted slice of ints and returns the index as specified by Search().

It accepts two parameters (a []int, x int) – a is the sorted slice of int type and x is an int type element to search and returns the index as specified by Search().

Note: The SearchInts() result is the index to insert the elements (x), if x is not present (it could be len(a)). The slice must be sorted in ascending order.

Syntax:

```func SearchInts(a []int, x int) int
```

Parameter(s):

• a : A sorted slice of ints.
• x : An int type elements to be searched within a.

Return Value:

The return type of the SearchInts() function is an int, it returns the index as specified by Search.

Example 1:

```// Golang program to demonstrate the
// example of sort.SearchInts() Function

package main

import (
"fmt"
"sort"
)

func main() {
a := []int{10, 20, 25, 27, 30}

x := 25
fmt.Println(sort.SearchInts(a, x))

x = 30
fmt.Println(sort.SearchInts(a, x))

x = 10
fmt.Println(sort.SearchInts(a, x))

x = 5
fmt.Println(sort.SearchInts(a, x))

x = 35
fmt.Println(sort.SearchInts(a, x))
}
```

Output:

```2
4
0
0
5
```

Example 2:

```// Golang program to demonstrate the
// example of sort.SearchInts() Function

package main

import (
"fmt"
"sort"
)

func main() {
a := []int{10, 20, 25, 27, 30}

x := 25
i := sort.SearchInts(a, x)
fmt.Printf("Element %d found at index %d in %v\n", x, i, a)

x = 5
i = sort.SearchInts(a, x)
fmt.Printf("Element %d not found, it can inserted at index %d in %v\n", x, i, a)

x = 40
i = sort.SearchInts(a, x)
fmt.Printf("Element %d not found, it can inserted at index %d in %v\n", x, i, a)
}
```

Output:

```Element 25 found at index 2 in [10 20 25 27 30]
Element 5 not found, it can inserted at index 0 in [10 20 25 27 30]
Element 40 not found, it can inserted at index 5 in [10 20 25 27 30]
```

Example 3:

```// Golang program to demonstrate the
// example of sort.SearchInts() Function

package main

import (
"fmt"
"sort"
)

// Main function
func main() {
a := []int{10, 10, 5, 20, 25}

b := []int{50, 10, 40, 30, 20}

var x1, x2 int
x1 = 20
x2 = 30

// Sorting  both slices of ints
sort.Ints(a)
sort.Ints(b)

// Printing both slices of ints
fmt.Println("a: ", a)
fmt.Println("b: ", b)

// Searching elements
ind1 := sort.SearchInts(a, x1)
ind2 := sort.SearchInts(b, x2)

// Displaying the results
fmt.Println("Result 1: ", ind1)
fmt.Println("Result 2: ", ind2)
}
```

Output:

```a:  [5 10 10 20 25]
b:  [10 20 30 40 50]
Result 1:  3
Result 2:  2
```