2017-12-20 8 views
0

私はleetcodeの問題14を解決しようとします。これは、文字列の配列の中で最も長い共通接頭文字列を見つける関数を書くことです。 ここに私のコードですが、私が期待した結果は "f"ですが、結果は ""です。 誰かが私を助けてくれますか?ありがとう!与えられた文字列配列の関数を呼び出す方法は?

class Solution { 
    String[] strsa={"fsd","fds","fgsdgf","fggdgdgd"}; 
    String prefix=longestCommonPrefix(strsa); 
    public String longestCommonPrefix(String[] strs) { 

     if (strs == null || strs.length == 0) { 
      return ""; 
     } 

     String result = strs[0]; 
     for (int i = 1; i < strs.length; i++) { 
      while (strs[i].indexOf(result) != 0) { 
       result = result.substring(0, result.length() - 1); 
      } 
     } 

     return result; 

    } 
    } 

は、ここでは、入力が空の配列を示しているだ結果 enter image description here

+0

入力内容は正しいですか?それはスクリーンショットで空であるように見えます。 – cdbbnny

+0

コードが正しいようです – logger

答えて

0

です。 "[]" エラー: エラー: 行13:エラー:return文がありません。

私はそれが彼らのウェブサイトの問題だと思う。

+0

ありがとう!しかし、入力が空である理由を知っていますか? –

+0

"String [] strsa = {" fsd "、" fds "、" fgsdgf "、" fggdgdgd "};" –

+0

私は彼らがどのようにSolutionクラスを実装しているのか分かりません。通常、mainメソッドを持つApplicationクラスは、ハードコードされた入力またはユーザー入力からString配列を渡します。何が提供されているか分からないことがあります。あなたは何をしていますが、それは自分自身で実行されません。 Javaコンパイラは、指定されていない限り最初にメインメソッドを探します。 – RickyM

関連する問題