查找算法:顺序查找
1. 简介
1.1. 算法思想
顺序查找,从表的开端,逐个将需要查找数据与表中数据比较,如果需要查找数据与表中数据相等,则查找成功。如果整张表遍历完没有找到相等,查找失败。
1.2. 效率
n + 1 2 \frac{n+1}{2} 2n+1
2. 图示
3. 演示
3.1. Go版本
3.1.1. 文件树形图
ordersort
├── order_sort.go
└── order_sort_test.go
3.1.2. 代码
order_sort.go
package ordersort
func GetNumIndex(num int, numArray []int) int {
for i, v := range numArray {
if v == num {
return i
}
}
return -1
}
order_sort_test.go
package ordersort
import "testing"
func TestGetNumIndex(t *testing.T) {
arr := []int{22, 11, 33, 23, 43, 55}
num := 33
index := GetNumIndex(num, arr)
if index != 2 {
t.Fatalf("GetNumIndex return value error %d\n", index)
}
t.Log(index)
}
3.1.3. 测试结果
=== RUN TestGetNumIndex
TestGetNumIndex: order_sort_test.go:12: 2
--- PASS: TestGetNumIndex (0.00s)
PASS
4. 参考
- 《C/C++函数与算法速查手册》