Amanda-Zhang
追梦女一枚

最长字符串前缀

2021-04-05 -leetcode -算法
Word count: 232 | Reading time: 1min

题目

编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀,返回空字符串 “”。

示例 1:

输入:strs = [“flower”,”flow”,”flight”]
输出:”fl”

示例 2:

输入:strs = [“dog”,”racecar”,”car”]
输出:””
解释:输入不存在公共前缀。

题解

没什么特别的,就是先将数组中第一个单词单独存起来,存到一个数组当中,然后遍历该数组和原数组从索引1开始的值,有一样的值就继续遍历,没有的话就跳出循环,最后截取一下,详情见代码。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/**
* @param {string[]} strs
* @return {string}
*/
var longestCommonPrefix = function(strs) {
if(strs.length == 0){
return "";
}
let prev = strs[0];
for(let i=1;i<strs.length;i++){
let j = 0;
for(;j<strs[i].length && j<prev.length;j++){
if(prev[j]!=strs[i][j]){
break;
}
}
prev = prev.slice(0,j)
if(prev === ""){
return "";
}
}
return prev;

};

Author: Amanda-Zhang

Link: http://chunchunya.github.io/2021/04/05/%E6%9C%80%E9%95%BF%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%89%8D%E7%BC%80/

Copyright: All articles in this blog are licensed under CC BY-NC-SA 3.0 unless stating additionally.

< PreviousPost
链表类题目
NextPost >
排序类算法
CATALOG
  1. 1. 题目
  2. 2. 题解