Coder Social home page Coder Social logo

guillaumelauzier / bitpacking Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 4 KB

This algorithm involves packing the data into as few bits as possible and then concatenating the resulting bit sequences to create the full data. This approach can be efficient for certain types of data, but may not be suitable for all use cases.

License: MIT License

C++ 100.00%
bitpacking

bitpacking's Introduction

BitPacking

This algorithm involves packing the data into as few bits as possible and then concatenating the resulting bit sequences to create the full data. This approach can be efficient for certain types of data, but may not be suitable for all use cases.

src.cpp

This code defines two functions, pack and unpack, which convert between a vector of 32-bit integers and a vector of 8-bit bytes using a simple bit-packing scheme. The pack function iterates over each value in the input vector and repeatedly appends 7-bit chunks to the output byte vector, with the high bit of each chunk set to indicate whether more chunks follow. The unpack function reverses this process, reading each byte in the input vector and combining its 7-bit chunks into a 32-bit integer until a byte with the high bit unset is encountered, at which point the integer is added to the output vector and a new one is started.

bitpacking's People

Contributors

guillaumelauzier avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.