此技术通过使用索引从列表的开头移动到末尾来传递元素列表。检查每个元素,如果它与搜索项不匹配,则检查下一个项。

示例代码:

package main
 
import "fmt"

func linearsearch(datalist []int, key int) bool {
	for _, item := range datalist {
		if item == key {
			return true
		}
	}
	return false
} 
 
func main() {
    items := []int{95,78,46,58,45,86,99,251,320}
    fmt.Println(linearsearch(items,58))
}

输出:

true

 

示例代码:传递指针方式

package main

import "fmt"

func linearsearch(datalist *[]int, key int) bool {
	for i := 0; i < len(*datalist); i++ {
		if (*datalist)[i] == key {
			return true
		}
	}
	return false
}

func main() {
	items := []int{95, 78, 46, 58, 45, 86, 99, 251, 320}
	fmt.Println(linearsearch(&items, 58))
}

输出:

true