摘要:注意要檢查參數(shù)數(shù)組是否為空或循環(huán)找出數(shù)組中最短的那個(gè)單詞,以這個(gè)單詞為基準(zhǔn),兩層循環(huán)嵌套,外層是遍歷這個(gè)最短單詞的每一個(gè)字母,內(nèi)層是遍歷所有單詞,看其它單詞這個(gè)位置的字母是否和最短單詞一樣,若都一樣,繼續(xù)向下遍歷,若有不一樣的,,返回當(dāng)前的
Easy 014 Longest Common Prefix Description:
find the longest common prefix string amongst an array of strings. If there is no common prefix, return an empty string "". (注意要檢查參數(shù)數(shù)組是否為空或==null)My Solution:
==Example==
Input: ["flower","flow","flight"]
Output: "fl"
for循環(huán)找出數(shù)組中最短的那個(gè)單詞,以這個(gè)單詞為基準(zhǔn),兩層for循環(huán)嵌套,外層for是遍歷這個(gè)最短單詞的每一個(gè)字母,內(nèi)層for是遍歷所有單詞,看其它單詞這個(gè)位置的字母是否和最短單詞一樣,若都一樣,繼續(xù)向下遍歷,若有不一樣的,break,返回當(dāng)前的最長(zhǎng)前綴
時(shí)間復(fù)雜度O(n2)
代碼如下:
public String longestCommonPrefix(String[] strs) { if (strs == null || strs.length == 0) return ""; String shortest = strs[0]; String prefix = ""; for(int i=1; i
仍舊是先找出最短字符串,以該字符串為基準(zhǔn),看其它字符串是否startswith該字符串,如果有不符合的,就減去最短字符串的最后一個(gè)字母然后繼續(xù)遍歷其它字符串,直至所有字符串都startswith某個(gè)前綴或最短字符串被減為空串
最壞情況下時(shí)間復(fù)雜度是O((shortest.length()-1) * n),這個(gè)最壞情況可能會(huì)好于第一種方法
這個(gè)方法的時(shí)間已經(jīng)非常短了,但有一點(diǎn)比較疑惑的是這個(gè)方法的空間復(fù)雜度比法一要高一點(diǎn)(撓頭
(部分)代碼如下:
while (!shortest.equals("")){ int j = 0; for (; jFast Solution 對(duì)My Solution的法二做一個(gè)改進(jìn),不需要找出最短字符串,直接用第一個(gè)字符串為基準(zhǔn)就可以做了
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/74251.html
摘要:在線網(wǎng)站地址我的微信公眾號(hào)完整題目列表從年月日起,每天更新一題,順序從易到難,目前已更新個(gè)題。這是項(xiàng)目地址歡迎一起交流學(xué)習(xí)。 這篇文章記錄我練習(xí)的 LeetCode 題目,語(yǔ)言 JavaScript。 在線網(wǎng)站:https://cattle.w3fun.com GitHub 地址:https://github.com/swpuLeo/ca...我的微信公眾號(hào): showImg(htt...
摘要:自己沒(méi)事刷的一些的題目,若有更好的解法,希望能夠一起探討項(xiàng)目地址 自己沒(méi)事刷的一些LeetCode的題目,若有更好的解法,希望能夠一起探討 Number Problem Solution Difficulty 204 Count Primes JavaScript Easy 202 Happy Number JavaScript Easy 190 Reverse Bi...
摘要:公眾號(hào)愛(ài)寫(xiě)編寫(xiě)一個(gè)函數(shù)來(lái)查找字符串?dāng)?shù)組中的最長(zhǎng)公共前綴。如果不存在公共前綴,返回空字符串。由于字符串長(zhǎng)度不一,可以先遍歷找出最小長(zhǎng)度字符串,這里我選擇拋錯(cuò)的形式,減少一次遍歷。 公眾號(hào):愛(ài)寫(xiě)bug Write a function to find the longest common prefix string amongst an array of strings. If there...
摘要:公眾號(hào)愛(ài)寫(xiě)編寫(xiě)一個(gè)函數(shù)來(lái)查找字符串?dāng)?shù)組中的最長(zhǎng)公共前綴。如果不存在公共前綴,返回空字符串。由于字符串長(zhǎng)度不一,可以先遍歷找出最小長(zhǎng)度字符串,這里我選擇拋錯(cuò)的形式,減少一次遍歷。 公眾號(hào):愛(ài)寫(xiě)bug Write a function to find the longest common prefix string amongst an array of strings. If there...
摘要:題目詳情題目要求是,給定一個(gè)字符串的數(shù)組,我們要找到所有字符串所共有的最長(zhǎng)的前綴。為了解決這個(gè)問(wèn)題,可以每次都縱向?qū)Ρ让恳粋€(gè)字符串相同位置的字符,找出最長(zhǎng)的前綴。 題目詳情 Write a function to find the longest common prefix string amongst an array of strings. 題目要求是,給定一個(gè)字符串的數(shù)組,我們要...
閱讀 1372·2021-11-24 09:39
閱讀 1361·2021-11-04 16:12
閱讀 2704·2021-09-24 09:47
閱讀 3349·2021-09-01 10:50
閱讀 1490·2019-08-30 15:55
閱讀 1438·2019-08-30 15:43
閱讀 656·2019-08-30 11:08
閱讀 3591·2019-08-23 18:33