头图

最长公共前缀

时间复杂度:O(s) (s 为所有字符串的长度之和)
空间复杂度:O(1)
  1. 排除字符串数组为空
  2. 假设第一个字符串为最长公共前缀
  3. 遍历数组的其它字符串
  4. 将第一个字符串的字符逐一纵向匹配
  5. 遇到不匹配 / 遍历完成字符串则退出

    var longestCommonPrefix = function(strs) {
     if(strs.length == 0) 
         return "";
     let ans = strs[0];
     for(let i =1;i<strs.length;i++) {
         let j=0;
         for(;j<ans.length && j < strs[i].length;j++) {
             if(ans[j] != strs[i][j])
                 break;
         }
         ans = ans.substr(0, j);
         if(ans === "")
             return ans;
     }
     return ans;
    };

全栈冲冲冲
1 声望0 粉丝

知识不应该区别国界,每个人生活在这个美好的时代都应该贡献自己的价值,我们国内的程序员工程师都应该多学本职以外的IT知识,不要局限于应用层,让我国的IT行业更加茁壮成长