Анализ временной сложности для вопроса о лит-кодеJavascript

Форум по Javascript
Ответить
Anonymous
 Анализ временной сложности для вопроса о лит-коде

Сообщение Anonymous »

При решении вопроса в LeetCode (самый длинный общий префикс) я использовал операции JavaScript startWith и слайс, обе из которых являются операциями o(N). Но LeetCode утверждает, что представленное мной решение — o(N) и довольно быстрое, что, как я знаю, не соответствует действительности. Может ли кто-нибудь сказать мне, как можно точно рассчитать временную сложность для этой задачи? Решение, которое я использовал, приведено ниже:
/**
* @param {string[]} strs
* @return {string}
*/
var longestCommonPrefix = function(strs) {
if(strs.length == 0 ){
return ""
}
if(strs.length == 1 ){
return strs[0]
}
let substring = strs[0] ;
for(let i = 1 ; i < strs.length ; i++) {
while(!strs.startsWith(substring)){
if(substring == "") {
return substring
}
else {
substring = substring.slice(0,-1)
}

}

}

return substring
};


Подробнее здесь: https://stackoverflow.com/questions/798 ... e-question
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»