zoukankan      html  css  js  c++  java
  • 领扣(LeetCode)最长公共前缀 个人题解

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

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

    示例 1:

    输入: ["flower","flow","flight"]
    输出: "fl"
    

    示例 2:

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

    说明:

    所有输入只包含小写字母 a-z 。

    这题比较简单,采用O(m*n)的算法复杂度,即对每个串内的字符一个字符一个字符判断,可以比较容易解决问题。不过要注意字符串数组越界的问题。

    代码如下:

     1 class Solution {
     2     public String longestCommonPrefix(String[] strs) {
     3         String ans = "";
     4         if (strs.length == 0)
     5             return ans;
     6         int minlen = strs[0].length();
     7         for (String string : strs) {
     8             if (string.length() < minlen)
     9                 minlen = string.length();
    10         }
    11         for (int i = 0; i < minlen; i++) {
    12             char tmp = strs[0].charAt(i);
    13             for (int j = 1; j < strs.length; j++) {
    14 
    15                 if (strs[j].charAt(i) == tmp)
    16                     continue;
    17                 else
    18                     return ans;
    19             }
    20             ans += tmp;
    21         }
    22         return ans;
    23     }
    24 }
  • 相关阅读:
    mycat测试
    hive数据倾斜原因以及解决办法
    hive设置参数的方法
    hive文件格式
    hive 测试
    spark sql
    leetcode:Inver Binary Tree
    leetcode:Insertion Sort List
    leetcode:Insert Node in a Binary Search Tree
    leetcode:insert interval
  • 原文地址:https://www.cnblogs.com/axiangcoding/p/9931578.html
Copyright © 2011-2022 走看看