• LeetCode-14. Longest Common Prefix


    1.题目描述

    Write a function to find the longest common prefix string amongst an array of strings.

    找到一组字符串的最长前缀。

    2.我的分析思路

    这一题的第一思路就是,把第一个字符串作为基准,遍历每个子字符串,然后判断其他字符串是否以这个子字符串为前缀,然后求出最长的即可。

    上代码:

    public String longestCommonPrefix(String[] strs) {
            if (strs.length == 0) {
                return "";
            }
    
            if (strs.length == 1) {
                return strs[0];
            }
            String result = "";
            String first = strs[0];
            int firstLength = first.length();
            for (int i = 0; i < firstLength; i++) {
                String temp = first.substring(0, i + 1);
                boolean isPrefix = true;
                for (int j = 1; j < strs.length; j++) {
                    if (strs[j].length() < temp.length() || !temp.equals(strs[j].substring(0, i + 1))) {
                        isPrefix = false;
                    }
                }
                if (isPrefix) {
                    result = temp;
                }
            }
            return result;
        }
    

    3.其他的思路

    if (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;
    

    思路跟我的大同小异,代码比我的简洁很多,我们写代码不就是追求简洁高效嘛?

  • 相关阅读:
    socketserver源码简介
    Python中实现switchcase
    maven知识整理
    架构师成长之路(5)--如何获取知识(方法)
    架构师成长之路(4)--知识体系(方法)
    python 定义函数
    Git 使用规范流程
    Mybatis内置的日志工厂提供日志功能
    Log4j配置详解
    【log4j2 加载配置文件】 加载配置文件的三种方法
  • 原文地址:https://www.cnblogs.com/f-zhao/p/6391816.html
Copyright © 2020-2023  润新知