申論題內容
二、一個問題的解,可以透過不同的演算法來完成。當比較各種演算法的執行效率時,有
所謂線性(linear)、指數(exponential)、常數(constant)、對數(logarithmic)與
多項式(polynomial)複雜度的區別。請問這些複雜度中,依照複雜程度由低到高
的排列順序為何?請舉出一個複雜度為常數的演算法,並詳細說明其之所以為常數
複雜度的理由。在搜尋一個元素(例如:比對一已知數是否存在陣列中)的問題上,
除了逐一循序的比對之外,還有甚麼方法?請以虛擬碼寫出你的方法。(30 分)