• 最长公共前缀


    此博客链接:

    最长公共前缀

    题目链接:

    题目

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

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

    示例 1:

    输入:strs = ["flower","flow","flight"]
    输出:"fl"
    示例 2:

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

    题解

    找最长公共子序列,可以先取数组中的第一个单词(假设为最大公共子序列),然后把第一个和后面每个单词的每个字母逐步比较,如果有不相等的,就更新最大公共子序列的值。

    代码

    class Solution {
        public String longestCommonPrefix(String[] strs) {
          if(strs.length==0)
          {
              return "";
          }
          String res=strs[0];
          for(int i=1;i<strs.length;i++){
              int j=0;
              for(;j<res.length()&&j<strs[i].length();j++){
                  if(res.charAt(j)!=strs[i].charAt(j)){
                      break;
                  }
              }
              res=res.substring(0,j);
              if(res.equals(" ")){
                  return "";
              }
          }
          return res;
        }
    }

    结果

    注意点

    1.字符串取长度使用length时,后面需要添加小括号,而数组不需要小括号。

    2.java中对比两个字符串是否相等时,需要使用equals,这比较的是值是否相等,而在比较字符时,使用等号。

    出来混总是要还的
  • 相关阅读:
    JVM(7) Java内存模型与线程
    JVM(6) 字节码执行引擎
    JVM(5) 类加载机制
    JVM(4) 类文件结构
    JVM(3) 垃圾收集器与内存分配策略
    python的with
    python http server handle json
    c++文件读写
    python字符串处理
    python decorator
  • 原文地址:https://www.cnblogs.com/ping2yingshi/p/14911636.html
Copyright © 2020-2023  润新知