Levenshtein distance: Difference between revisions

added BQN implementation
(added MiniScript example)
(added BQN implementation)
Line 880:
'rosettacode' -> 'raisethysword' has distance 8
</pre>
 
=={{header|BQN}}==
Recursive slow version:
<lang BQN>Levenshtein ← {
𝕨 𝕊"": ≠𝕨;
""𝕊 𝕩: ≠𝕩;
𝕨 𝕊 𝕩:
Tail←1⊸↓
𝕨 =○⊑◶⟨1+·⌊´ 𝕊○Tail ∾ Tail⊸𝕊 ∾ 𝕊⟜Tail, 𝕊○Tail⟩ 𝕩
}</lang>
Fast version:
<lang BQN>Levenshtein ← ∾⟜@⊸{¯1⊑(↕≠𝕨)𝕨{(1⊸+⊸⌊`1+⊑»«⌊⊢-𝕨=𝕗˙)𝕩}´⌽𝕩}</lang>
{{out|Example use}}
<lang> "kitten" Levenshtein "sitting"
3
"Saturday" Levenshtein "Sunday"
3
"rosettacode" Levenshtein "raisethysword"
8</lang>
 
=={{header|Bracmat}}==
Anonymous user