Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,22 @@
|
|||
ClearAll[BurrowWheeler, InverseBurrowWheeler]
|
||||
BurrowWheeler[sin_String, {bdelim_, edelim_}] := Module[{s},
|
||||
s = Characters[bdelim <> sin <> edelim];
|
||||
s = RotateLeft[s, #] & /@ Range[Length[s]];
|
||||
StringJoin[LexicographicSort[s][[All, -1]]]
|
||||
]
|
||||
InverseBurrowWheeler[sin_String, {bdelim_, edelim_}] := Module[{s, chars},
|
||||
chars = Characters[sin];
|
||||
s = ConstantArray[{}, Length[chars]];
|
||||
Do[
|
||||
s = LexicographicSort[MapThread[Prepend, {s, chars}]];
|
||||
,
|
||||
{Length[chars]}
|
||||
];
|
||||
StringTake[StringJoin[SelectFirst[s, Last /* EqualTo[edelim]]], {2, -2}]
|
||||
]
|
||||
BurrowWheeler["BANANA", {"^", "|"}]
|
||||
InverseBurrowWheeler[%, {"^", "|"}]
|
||||
BurrowWheeler["appellee", {"^", "|"}]
|
||||
InverseBurrowWheeler[%, {"^", "|"}]
|
||||
BurrowWheeler["dogwood", {"^", "|"}]
|
||||
InverseBurrowWheeler[%, {"^", "|"}]
|
||||
Loading…
Add table
Add a link
Reference in a new issue