huffman

Version, currently master branch1 version
  • master branchlatestJul 28, 2018

github.com/chenkovsky/huffman

huffman algorithm in crystal

2 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  huffman:
    github: chenkovsky/huffman
    branch: master

master is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
0.25.1
License
MIT
Author
chenkovsky

Dependencies

This version declares no dependencies.

README

huffman

Huffman Encoding

Installation

Add this to your application's shard.yml:

dependencies:
  huffman:
    github: chenkovsky/huffman

Usage

require "huffman"
  it "works" do
    symbols = ["F", "O", "R", "G", "E", "T"]
    freqs = [2, 3, 4, 4, 5, 7]
    huff = Huffman.compile(freqs)
    huff.path_codes.map { |_, _, bs| bs.map { |b| b ? "1" : "0" }.join("") }.should eq(["000", "100", "111", "011", "10", "01"])
  end

TODO: Write usage instructions here

Development

TODO: Write development instructions here

Contributing

  1. Fork it (https://github.com/chenkovsky/huffman/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors