JAVA OJ练习第19题——最长公共前缀

力扣链接:最长公共前缀
题目要求:
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。

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

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

代码如下:

class Solution {
    public String longestCommonPrefix(String[] strs) {
        if(strs.length == 0)  return "";
        String s = strs[0];
        for(String string : strs) { 
        //开始循环
            while(!string.startsWith(s)) {  
            //startsWith() 方法用于检测字符串是否以指定的前缀开始。
                if(s.length() == 0)  return "";
                s = s.substring(0,s.length() - 1);
                //substring() 方法返回字符串的子字符串。
            }
        }
        return s;
    }
}

本题共三个知识点:

  1. for(String string : strs)
    遍历字符串,要会这种写法。
  2. startsWith() 方法
    用于检测字符串是否以指定的前缀开始。如果字符串以指定的前缀开始,则返回 true;否则返回 false。
  3. substring() 方法
    返回字符串的子字符串。

在这里插入图片描述

你可能感兴趣的:(OJ练习,leetcode,算法,java)