Longest common substring: Difference between revisions

Content added Content deleted
m (→‎{{header|Haskell}}: Applied Ormolu)
Line 830: Line 830:
var mat = Array.empty(w1.len() + 1, () => Array.empty(w2.len() + 1, 0))
var mat = Array.empty(w1.len() + 1, () => Array.empty(w2.len() + 1, 0))
var (i, j) = (0, 0)
var (i, j) = (0, 0)

for sLett in w1 {
for sLett in w1 {
for tLett in w2 {
for tLett in w2 {
if tLett == sLett {
if tLett == sLett {
const curLen = mat[i][j] + 1
let curLen = mat[i][j] + 1
mat[i + 1][j + 1] = curLen
mat[i + 1][j + 1] = curLen
if curLen > len {
if curLen > len {
Line 846: Line 846:
i += 1
i += 1
}
}
String(values = w1).sub((end + 1) - len, len)
String(values: w1).sub((end + 1) - len, len)
}
}
Line 852: Line 852:
return String(lComSubStr(w1.iter().toArray(), w2.iter().toArray()))
return String(lComSubStr(w1.iter().toArray(), w2.iter().toArray()))
}
}

comSubStr("thisisatest", "testing123testing") // "test"</lang>
comSubStr("thisisatest", "testing123testing") // "test"</lang>