我正在做一個實驗,比較索引函數和我自己的線性搜索函數的執行時間。據我的理解,Python爲索引函數實現了一個線性搜索算法,所以執行時間應該大致相同,不是嗎?爲什麼python索引函數執行時間比我自己的線性搜索函數更快?
我自己的搜索功能,看起來像這樣
def linearSearch (x,numList,length):
n = 0
for i in range(length):
n = n + 1
if numList[i] == x:
return i, n
return -1, n
號你的搜索使用Python,Python的使用編譯的C代碼(如果你使用CPython的) 。雖然時間*複雜性*將是相同的。 –
啊謝謝你的迴應。所以這兩個函數不能直接比較,因爲它們使用不同的語言? – eukoloko
Python可能不會爲'index'使用Python實現;它可能使用了一些C代碼(或Jython實現的本地語言等)。 –