Problem Title: Longest Common Prefix in an Array
Dhruva Bhat S N
Passionate Web Developer | Crafting Innovative Solutions with Expertise in Frontend & Backend Technologies | Intern @ Cloud Ambassadors
This Problem is listed in GFG sheet
Problem Statement
Given an array of N strings, find the longest common prefix among all strings present in the array.
Example 1
Input:
N = 4
arr[] = {geeksforgeeks, geeks, geek,
geezer}
Output: gee
Explanation: "gee" is the longest common
prefix in all the given strings.
Example 2
Input:
N = 2
arr[] = {hello, world}
Output: -1
Explanation: There's no common prefix
in the given strings.
Your Task
You don't need to read input or print anything. Your task is to complete the function longestCommonPrefix() which takes the string array arr[] and its size N as inputs and returns the longest common prefix common in all the strings in the array. If there's no prefix common in all the strings, return -1.
领英推荐
Java Code
class Solution{
String longestCommonPrefix(String arr[], int n){
if (n == 0) {
return "-1";
}
String res = arr[0];
for (int i = 1; i < n; i++) {
while (arr[i].indexOf(res) != 0) {
res = res.substring(0, res.length() - 1);
if (res.isEmpty()) {
return "-1";
}
}
}
return res;
}
}
Approach
if(res.isEmpty()){
return "-1";
}