jwalsh / jwalsh/hy-algorithms

Implement queue-based algorithms and data structures

Open
#15 0 comments 0 reactions 0 assignees View on GitHub
data-structure difficulty:medium queue
Dominant language
Hy
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Create implementations for queue-based algorithms and data structures:

## Basic implementations:
- Queue using arrays (circular array)
- Queue using linked lists
- Priority queue implementation
- Deque (double-ended queue)
- Queue using stacks

## Classic queue problems:
- Level order traversal of trees
- Sliding window maximum
- Implement LRU cache
- Generate binary numbers from 1 to n
- Rotten oranges problem
- First non-repeating character in stream
- Josephus problem

## Requirements:
- Provide optimized implementations
- Create comprehensive test cases
- Include complexity analysis
- Demonstrate practical applications

This collection will cover fundamental queue operations and their applications in solving algorithm problems.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the repository's existing algorithm and data-structure organization and conventions. Implement the listed queue variants and classic queue problems, then add comprehensive tests, complexity analysis, and practical-application demonstrations. Done means the requested implementations are covered and verified by tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.