-1
所以我剛開始自己研究Big O符號。我認爲我已經理解了基本知識,直到我寫了一個函數來檢查素數並試圖找出它的時間複雜度。代碼如下:我的代碼的時間複雜度是多少?
function isPrime(num){
if (num === 1 || num%1 !== 0){ //Checks if num is 1 or decimal
return false;
}
else{
for (var i = 2; i < num; i++) {
if (num%i === 0 && i!== 1){ //Checks if any numbers from 2 to are divisible by num
return false
}
}
}
return true;
}
console.log(isPrime(6));
讓我困惑的第一件事情是if語句中的多個條件是否有任何區別,或者只計算一次?然後通知我有三個返回語句。這是否意味着我必須包含最後一行代碼,我將一個數字傳遞給該函數以評估其時間複雜性?或者我可以做到沒有通過價值,並計算不同的情況?
讓您的標題實際上描述您的問題或問題。 – csmckelvey
@takendarkk感謝您指出。這是我第一次發帖,我忘了編輯我的選秀權。希望這更清楚。 –