Skip to content

Instantly share code, notes, and snippets.

@minikomi
Created January 1, 2012 15:01
Show Gist options
  • Save minikomi/1547535 to your computer and use it in GitHub Desktop.
Save minikomi/1547535 to your computer and use it in GitHub Desktop.
lzw
var lzw = function(input_string){
var dic = "abcdefghijklmnopqrstuvwzyz ".split("");
var inp = input_string.split("");
var buffer = "";
var encoded = [];
while (inp.length > 0){
var ch = inp.shift();
if(dic.indexOf(buffer + ch) >= 0){
buffer = buffer+ch;
}else{
encoded.push(dic.indexOf(buffer));
dic.push(buffer + ch);
buffer = ch;
}
}
console.log(encoded);
console.log(dic);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment