in
in
运行效果如下图所示:
但这种方式有一个弊端,就是要遍历整个字符串数组。如果数组里面有100万条数据,那么平均要遍历50万次才能找到。这是一个非常费时间的操作。
有没有什么办法可以优化这个操作呢?
O(n)
sortsort.Strings()
结合两个函数,我们可以实现一个更高效的算法:
运行效果如下图所示:
sort.Stringsstr_arraystr_array
通过先排序再查询的方式,对于100万个元素的字符串数组,只需要查询20次左右就能确认字符串是否存在。速度大大提升。
name_listname_list
参考资料
[1]
sort.SearchStrings()