Golang实现线性搜索算法(Linear Search)

本文将使用Go语言实现线性搜索算法(Linear Search);

线性搜索算法原理

线性搜索,就是从头找到尾;比如有一个数组,从该数组的第一个值开始找到结尾,依次判断是否与要寻找的值相等;

Golang实现线性搜索

package main

import (
	"fmt"
)

func linearSearch(array []int, query int) int {
	for i, item := range array {
		if item == query {
			return i
		}
	}
	return -1
}

func main(){

	lst := []int{11,22,33,44,55}
	
	fmt.Println(linearSearch(lst,33))
	fmt.Println(linearSearch(lst,55))
	fmt.Println(linearSearch(lst,77))

}

程序运行结果

2
4
-1

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/golang-linear-search.html

分类: 计算机技术
推荐阅读:
Python type()函数 type() 函数用于获取对象的类型,或者动态地创建一个新的类。其语法如下:
Python将16进制HASH转换成二进制 将16进制的Hash(比如MD5、SHA1等值)转换位二进制的字符串其实很容易,只需要掌握这几个函数:
Rust:if this is intentional, prefix it with an underscore解决方法 编译Rust程序时提示:if this is intentional, prefix it with an underscore: `_x`,这表明存在一个未使用的变量 x,你可以将其删除或在变量名前添加一个下划线前缀;
Python any()函数 any()是 Python 内置函数之一,接受一个可迭代对象(例如列表、元组、集合或生成器)作为参数,如果至少有一个元素在逻辑上等价于 True,则返回 True,否则返回 False。
Rust的第一个传统Hello World程序 本页将向你展示Rust的第一个传统程序;你将学会如何给程序添加注释、格式化打印文本信息,以及将Rust源码编译成可执行程序;
spim:(parser) Label is defined for the second time 解决方法 在使用QtSpim读取汇编语言文件时提示:Label is defined for the second time on line xx of file xxx main:,出现这个错误是因为你没有在载入文件前初始化你的模拟器;