一道演算法題 從字串陣列中找到可以組成該字串的兩個字串?

時間 2022-01-16 05:17:42

1樓:

varlittleWord_list=[

"okra"

,"date"

,"pear"

,"lime"

,"phil"

,"tre"

,"mar"

,"sh"

,"mars"

,"h"

,"wr"

,"aith"

,"shi"

,"rk"

,"twin"

,"set"

,"pho"

,"bic"

];var

allWords=[

];//牛津詞典的全部單詞

varwhole_list

=littleWord_list

.concat

(allWords

);//備註:單詞最多被拆分成3個,

function

queue

(arr

,size

)var

allResult=;

(function

(arr

,size

,result

)else

}})(

arr,

size,);

return

allResult;};

function

get_arr(nu

,wordLen)}

else

}//三個拆分---

letret_arr

=chaifen_arr1

.concat

(chaifen_arr2

);return

ret_arr;};

function

get_str_arr

(arr_arrange

,word

)ret_arr[i

]=sh_arr;}

return

ret_arr;};

function

chaifen2

(word

)let

arr2

=get_str_arr

(arr_arrange

,word

);//例子:[ ['phil','tre'],['phi','ltre'] ]

for(i=

0;i<

arr2

.length;i

++)else

}//判斷是否if(

co==

current_arr

.length)}

nu=nu-

1;}while(nu

>=2);

};let

word

='philtre'

;let

result

=chaifen2

(word

);console

.log

(result

);console

.log

(chaifen2

('marsh'

));console

.log

(chaifen2

('shirk'

));console

.log

(chaifen2

('twinset'

));console

.log

(chaifen2

('phobic'));

如何從幾十億字串(每個字串不超過200位元組)中,查詢出,包含某個子串所有字串

建議使用 KMP 演算法,如果是找出出現的位置,時間複雜度為 O 幾十億字串 的總長 某個子串 的長度 但題主問的是 包含某個子串所有字串 那這樣的字串就可以有很多個,而且你得輸出字串而不只是位置,那麼複雜度會大很多。最壞情況下,幾十億字串 中每乙個都是 200 個 a,某個子串 是乙個 a,那麼你...

求教乙個字串生成的演算法?

我覺得沒必要考慮高不高效,只要考慮好生成的字串怎麼存就行了,因為你要的是長度為n的所有組合,那麼必然會輸出所有的字串,所以不管啥演算法都不能使時間複雜度降低到輸出所用時間以下。 zanxas 乙個string佔多少記憶體?用char陣列還是string考慮過沒?26 10 36 36的五次方是多少?...

一道python的演算法題,找出符合條件的最小值

from itertools import combinations xlist 9,8,7,6,5,4,3,2,1,10,11,12,13,14,15,16,17,18,19 F 5 foo filter lambda x x 1 xlist F enumerate xlist bar combi...