zoukankan      html  css  js  c++  java
  • LeetCode: Longest Common Prefix

    string.erase没掌握好,悲了个剧,2次过

     1 class Solution {
     2 public:
     3     string longestCommonPrefix(vector<string> &strs) {
     4         // Start typing your C/C++ solution below
     5         // DO NOT write int main() function
     6         string pre = "";
     7         if (!strs.size()) return pre;
     8         for (int i = 0; i < strs[0].size(); i++) {
     9             pre += strs[0][i];
    10             int j = 1;
    11             for (; j < strs.size(); j++) {
    12                 if (pre != strs[j].substr(0, i+1)) break;
    13             }
    14             if (j != strs.size()) {
    15                 pre.erase(pre.size()-1, 1);
    16                 return pre;
    17             }
    18         }
    19         return pre;
    20     }
    21 };

     后来写了个更加精简的代码

     1 class Solution {
     2 public:
     3     string longestCommonPrefix(vector<string> &strs) {
     4         // Start typing your C/C++ solution below
     5         // DO NOT write int main() function
     6         sort(strs.begin(), strs.end());
     7         string ret;
     8         if (!strs.size() || !strs[0].size()) return ret;
     9         int cur = 0;
    10         while (cur < strs[0].size() && strs[0][cur] == strs[strs.size()-1][cur]) {
    11             ret += strs[0][cur];
    12             cur++;
    13         }
    14         return ret;
    15     }
    16 };

     C#

     1 public class Solution {
     2     public string LongestCommonPrefix(string[] strs) {
     3         Array.Sort(strs);
     4         string ans = "";
     5         if (strs.Length == 0 || strs[0].Length == 0) return ans;
     6         int cur = 0;
     7         while (cur < strs[0].Length && strs[0][cur] == strs[strs.Length-1][cur]) {
     8             ans += strs[0][cur];
     9             cur++;
    10         }
    11         return ans;
    12     }
    13 }
    View Code
  • 相关阅读:
    创业公司新品如何寻求科技媒体的报道?
    DevStore分享:详析消费者十大心理学
    DevStore教你如何玩转饥饿营销?
    iClap分享:如何优雅的在 APP 中实现测试?
    java内部类
    Tostring 的用法
    Java 集合详解
    Java集合浅析
    异常--解析
    is-a 、have-a、和 like-a的区别
  • 原文地址:https://www.cnblogs.com/yingzhongwen/p/2995674.html
Copyright © 2011-2022 走看看