問題:
給一字串陣列,找出最大相同開頭

範例:
1. 輸入: strs = [ "flower", "flow", "flight" ]
    輸出: "fl"
2. 輸入: strs = [ "dog", "racecar", "car" ]
    輸出: ""

提問:
沒有

一般想法:
兩個迴圈,用第一個字串去找,慢慢增加長度。

進階解法:
沒有。有一個先排序,再比較第一個字串和最後一個字串的方法,但是沒有比較快

程式:
 

var longestCommonPrefix = function (strs) {
let prefix = "";
loop:
for (let i = 1; i <= strs[0].length; i++) {
var sub_str = strs[0].substring(0, i);
for (let j = 1; j < strs.length; j++) {
if (strs[j].indexOf(sub_str) != 0) {
break loop;
}
}
prefix = sub_str;
}
return prefix;
};
arrow
arrow
    創作者介紹
    創作者 讀樂島主 的頭像
    讀樂島主

    讀樂島

    讀樂島主 發表在 痞客邦 留言(0) 人氣()