python中顺序查找法例子_Python查找算法(一)------ 顺序查找
查找算法? --? 簡介
查找(Searching)就是根據給定的某個值,在查找表中確定一個其關鍵字等于給定值的數據元素。
查找表(Search Table):由用一類型的數據元素構成的集合
關健字(Key):數據元素中某個數據項的值,又稱為鍵值
主鍵(Primary Key):可唯一的標識某個數據元素或記錄的關健字
查找表按照操作方式可分為:
1.靜態查找表(Static Search Table):只做查找操作的查找表。他的主要操作是:
查詢某個“特定的”數據元素是否在表中
檢索某個“特定的”數據元素和各種屬性
2.動態查找表(Dynamic Search Table):在查找中同時進行插入或刪除等操作:
查找時插入數據
查找時刪除數據
順序查找
算法簡介:順序查找又稱為線性查找,是一種最簡單的查找方法。
適應:適用于線性表的順序存儲結構和鏈式存儲結構。
算法的時間復雜度:O(n)
基本思路:從第一個元素m開始逐個與需要查找的元素x進行比較,當比較到元素值相同(即m=x)時返回元素m的下標,如果比較到最后都沒有找到,則返回-1。
優點:是對表中數據元素的存儲沒有要求。另外,對于線性鏈表,只能進行順序查找。
缺點:當n很大時,平均查找長度較大,效率低。
算法實現:
def sequaential_search(lis, key):
length = len(lis)
for i in range(length):
if lis[i] == key:
return i
else:
return False
if __name__ == '__main__':
LIST = [1, 5, 8, 123, 22, 54, 7, 99, 300, 222]
result = sequential_search(LIST, 123)
print(result)
總結
以上是生活随笔為你收集整理的python中顺序查找法例子_Python查找算法(一)------ 顺序查找的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 林向阳中将军衔到底是什么级别?
- 下一篇: python元组的创建取值排序计数_Py