Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Alternative Huffman Coding Implementation Using Priority Queue and Modular Design #12422

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

sushanth-shetty11
Copy link

This pull request introduces an alternative implementation of the Huffman Coding algorithm for compressing text files. The proposed solution offers the following features:

Efficient Priority Queue Handling: Utilizes Python's heapq module to manage the min-heap for constructing the Huffman tree efficiently.
Modular Design: Divides the logic into clear, reusable functions such as frequency calculation, tree building, code generation, and encoding.
Improved Readability: Ensures clean and well-documented code with meaningful function and variable names, making it easier to understand and maintain.
Formatted Output: Displays the generated Huffman codes and encoded file contents in a structured manner for better user experience.
This implementation complements the existing project by providing an alternative approach that is easy to extend and optimize. It can serve as an example of how to use Python's built-in modules effectively for real-world algorithms.

@algorithms-keeper algorithms-keeper bot added awaiting reviews This PR is ready to be reviewed tests are failing Do not merge until tests pass labels Dec 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting reviews This PR is ready to be reviewed tests are failing Do not merge until tests pass
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant