这个算法的时间复杂度是多少?
我知道 array.map 有 O(n) 其中 n 是数组的长度。我也读过 string.slice() 也有 O(n) 的时间复杂度。但是,由于切片取决于单词的长度,所以我说时间复杂度为 0(n + m) 是否正确,其中 m 是单词的长度。
function sentenceCaps(str) {
if (!str) {
return new Error('empty string');
}
let arr = str.toLowerCase().split(' ');
let results = arr.map(word => {return word[0].toUpperCase()+ word.slice(1)});
return results.join(' ');
}
手掌心
相关分类