js编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串
时间: 2023-08-28 08:16:27 浏览: 115
好的,以下是实现最长公共前缀的 JavaScript 函数:
```javascript
function longestCommonPrefix(strs) {
if (strs.length === 0) return "";
let prefix = strs[0];
for (let i = 1; i < strs.length; i++) {
while (strs[i].indexOf(prefix) !== 0) {
prefix = prefix.slice(0, prefix.length - 1);
if (prefix.length === 0) return "";
}
}
return prefix;
}
```
这个函数接收一个字符串数组 `strs` 作为参数,返回这个数组中所有字符串的最长公共前缀。首先判断数组是否为空,如果是,则返回空字符串。然后将第一个字符串设置为前缀 `prefix`。接下来循环遍历数组中的所有字符串,如果当前字符串不以 `prefix` 开头,则将 `prefix` 不断缩短,直到当前字符串以 `prefix` 开头或者 `prefix` 变成空字符串,如果 `prefix` 变成了空字符串,则说明不存在公共前缀,返回空字符串。最后返回 `prefix`。
相关问题
JAVA编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ““
public String longestCommonPrefix(String[] strs) {
if (strs == null || strs.length == 0) {
return "";
}
String prefix = strs[0];
for (int i = 1; i < strs.length; i++) {
while (strs[i].indexOf(prefix) != 0) {
prefix = prefix.substring(0, prefix.length() - 1);
if (prefix.isEmpty()) {
return "";
}
}
}
return prefix;
}
编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""Java
可以使用以下代码实现:
```
public String longestCommonPrefix(String[] strs) {
if (strs == null || strs.length == 0) {
return "";
}
String prefix = strs[0];
for (int i = 1; i < strs.length; i++) {
while (strs[i].indexOf(prefix) != 0) {
prefix = prefix.substring(0, prefix.length() - 1);
if (prefix.isEmpty()) {
return "";
}
}
}
return prefix;
}
```
这个函数可以接受一个字符串数组作为参数,然后返回这些字符串的最长公共前缀。如果不存在公共前缀,则返回空字符串。
阅读全文