Longest common prefix: Difference between revisions

Content added Content deleted
m (Added AutoHotkey)
m (Added AutoHotkey)
Line 673: Line 673:


=={{header|AutoHotkey}}==
=={{header|AutoHotkey}}==
<lang AutoHotkey>Longest_common_prefix(data){
<lang AutoHotkey>lcp(data){
for num, v in StrSplit(data.1)
for num, v in StrSplit(data.1)
for i, word in data
for i, word in data
if (SubStr(word, 1, num) <> SubStr(data.1, 1, num))
if (SubStr(word, 1, num) <> SubStr(data.1, 1, num))
return SubStr(word, 1, num-1)
return SubStr(word, 1, num-1)
return word
return SubStr(word, 1, num)
}</lang>
}</lang>
Examples:<lang AutoHotkey>MsgBox % ""
Examples:<lang AutoHotkey>MsgBox % ""
. "`n" Longest_common_prefix(["interspecies","interstellar","interstate"])
. "`n" lcp(["interspecies","interstellar","interstate"])
. "`n" Longest_common_prefix(["throne", "throne"])
. "`n" lcp(["throne","throne"])
. "`n" Longest_common_prefix(["throne", "dungeon"])
. "`n" lcp(["throne","dungeon"])
. "`n" Longest_common_prefix(["throne", "", "throne"])
. "`n" lcp(["throne","","throne"])
. "`n" Longest_common_prefix(["cheese"])
. "`n" lcp(["cheese"])
. "`n" Longest_common_prefix([""])
. "`n" lcp([""])
. "`n" Longest_common_prefix(["send", "serve"])
. "`n" lcp([])
. "`n" lcp(["prefix","suffix"])
. "`n" lcp(["foo","foobar"])
return</lang>
return</lang>
{{out}}
{{out}}
Line 697: Line 699:
cheese
cheese



se

</pre>
foo</pre>


=={{header|AWK}}==
=={{header|AWK}}==