標籤

二元樹 (1) 字串常數池 (1) 投資 (3) 每月損益 (37) 例外處理 (1) 泛型 (2) 股票 (15) 指標 (5) 英文 (8) 基本資料型別 (1) 期貨 (1) 程式交易 (10) 量化投資 (5) 亂亂寫 (3) 概念 (3) 資料結構 (3) 演算法 (3) 數學 (3) 轉型 (1) AMA (1) ArrayList (1) assert (1) BeautifulSoup (1) C/C++ (8) casting (1) ClassCastException (1) classpath (1) Collection (4) Comparable (1) comparTo() (1) constructor (1) database (3) Debian (1) Dropbox (2) EA (2) enum (1) equals() (2) exception (3) extends (1) ffmpeg (1) final (1) Git (1) HashMap (1) HashSet (1) hasNext() (1) HTS (3) instanceof (1) IS-A (1) Iterator (1) JAVA (43) length (1) Linux (31) List (1) Mac (6) Map (1) ML (2) MT4 (6) MySQL (2) next() (1) NullPointerException (1) Number (1) Numpy (2) OpenCart (1) OpenCV (3) OSX (1) overloading (1) overriding (3) pandas (2) PHP (8) PriorityQueue (1) Python (11) Queue (1) random() (1) reverse() (1) Samba (1) SCJP (21) sqrt() (1) synchronized (1) talib (1) ufw (1) uTorrent (1) var-args (2) VHF (1) vim (2) Yhoo知識+ (4)

2011年11月5日 星期六

111025_演算法_雙迴圈的時間複雜度

(a)
for(a=1; a<N; a++)
    for(b=1; b<=N; b++)
        c++;
解:
a=1N-1b=1N
a=1N-1.N
Na=1N-11  
N(N-1) 
≈ N
∈ O(N2)


(b)
for(a=1; a<N; a++)
    b++;
解:
a=1N-1 1 = N-1 ≈ N ∈ O(N)


(c)
for(a=1; a<N; a++)
    for(b=a; b<7; b++)
        c++;
解:
a=1N-1b=a 
a=1N-1(6-a+1) 
a=1N-1(7-a)      
= 7a=1N-11 - a=1N-1a   
= 7(N-1-1+1) - (1+N-1)(N-1)/2
= 7(N-1) - N(N-1)/2
≈ N2
∈ O(N2)     

沒有留言:

張貼留言