2017-02-20 67 views
0

這是寫入到L1和L2。這段代碼片段的BigO運行時是什麼?只需確認

while(iter1.hasNext()&&iter2.hasNext()){ 
     element1 = iter1.next(); 
     element2 = iter2.next(); 
     int result; 
     while(element1 != null && element2 != null){ 
      result = element1.compareTo(element2); 
      if(result == 0){ 
       L3.add(element1); 
      } 
     } 
    } 

是命令(n^2)嗎?

回答

1

它簡直就是O(n)。內部「while」循環不會重複,因爲它所依賴的條件element1element2不會在內部更改。如果你輸入了嵌套的while循環,你將永遠不會離開。

+0

實際上,這個算法不提供兩組之間的交集。 – Hackerman