時間複雜度:時間複雜度並不是處理乙個問題要花費多少時間,我們研究解決乙個特定的資料問題花費多少時間是沒有意義的,時間複雜度衡量的是隨著問題規模的擴大,程式所需要的時間長度增加的情況。
p問題:問題可以在多項式時間內求解的統稱為p問題(可以在多項式內求解的問題一定可以在多項式時間內驗證,所以p問題一定是np問題)。
np問題:對於一類問題存在問題的解,如果我要驗證問題的解是否正確,且驗證本身是多項式時間的求解,但是問題本身的求解方式是不是多項式時間求解無關緊要,對於這 樣的問題我們稱之為np問題。
np難問題:np難問題至少和np問題一樣難。
np完全問題:具有兩個性質:(1)可以在多項式的時間內驗證乙個候選解是不是問題的解;(2)改變np問題的輸入可以使np問題轉化成np完全問題。
通俗理解P和NP
通俗理解p和np 上篇博文談及np,有博友認為我文中沒有解釋np的概念,是不妥的,這次對p和np進行詳細的講解,使得非計算機專業的理工類也能看懂,計算機專業的當然就更能透徹地看懂了。要計算或解決乙個問題,該問題通常有乙個大小規模,用n表示。例如,若分析計算乙個二進位制數,該數有多少位,這個位就是其大...
通俗理解NP,NPC,NP Hard問題
我們把解決一類問題的方法或過程,稱之為演算法。而演算法有乙個很重要的指標就是時間複雜度o。因為我們最終是要通過計算機來執行這些演算法的,而計算機的算力再高也終究是個有限值,因此如果乙個演算法的時間複雜度很高,那麼當輸入的資料量十分龐大時,計算機處理的時間就會無法想象地增長。通過時間複雜度的概念就可以...
P問題 NP問題 NP完全問題和NP難問題
在講p類問題之前先介紹兩個個概念 多項式,時間複雜度。知道這兩概念的可以自動跳過這部分 1 多項式 axn bxn 1 c 恩.就是長這個樣子的,叫x最高次為n的多項式.咳咳,別嫌我囉嗦。有些人說不定還真忘了啥是多項式了。例如第一次看到的鄙人 2 時間複雜度 我們知道在計算機演算法求解問題當中,經常...