dsa_kit 0.0.5 copy "dsa_kit: ^0.0.5" to clipboard
dsa_kit: ^0.0.5 copied to clipboard

A scalable DSA utilities kit for Dart. Includes Heaps, DeQueues, and more.

DSA KIT #

Pub Version License: MIT Dart

A scalable Data Structures & Algorithms toolkit for Dart, designed to make competitive programming, interview preparation, and algorithmic problem-solving more accessible in the Dart ecosystem.

🎯 Why dsa_kit? #

When working with Dart, you might notice that while its core libraries are powerful, they don’t provide many of the classic data structures (like heaps, deques, or specialized queues) that are common in languages such as Python (heapq, collections.deque) or Java (PriorityQueue, LinkedList).

This is where dsa_kit comes in. It’s designed to give you the building blocks you need for problem-solving, algorithm practice, and production systems:

  • πŸ—οΈ Well-structured & SOLID – clean, maintainable, and extensible implementations.

  • πŸ§ͺ Battle-tested – backed by strong unit tests to ensure reliability.

  • πŸ“š Beginner-friendly – readable code and examples for learning and interviews.

  • ⚑ Optimized for performance – suitable for competitive programming and high-throughput apps.

  • πŸš€ Practical & ready-to-use – fills the gap between Dart’s core libraries and real-world problem-solving needs.

πŸš€ Quick Start #

Add dsa_kit to your pubspec.yaml:

dependencies:
  dsa_kit: <latest-version>

Run:

dart pub get

πŸ“¦ Available Data Structures #

Data Structure Variants / Implementations Key Features Example Use Cases
Heap - MinHeap<T>
- MaxHeap<T>
- Priority-based ordering
- push, pop, peek
- Works with Comparable and custom objects
- Priority Queues
- Find k-th smallest/largest
- Heap Sort
Deque (Double-Ended Queue) - Deque<T> - Insert/remove from both ends
- appendLeft, appendRight
- popLeft, popRight
- peekLeft, peekRight
- Sliding Window Problems
- Palindrome checks
- BFS/DFS variations

πŸ› οΈ Utilities #

Utility Description Example Usage
Int Extensions Convenient constants for integer bounds INT.infinity, INT.negativeInfinity

πŸ§ͺ Testing #

Run tests:

dart test

πŸ“‹ Planned Features:

  • Trie - For string searching and prefix operations
  • Union-Find (Disjoint Set) - For dynamic connectivity problems
  • Graph Utilities - BFS, DFS, shortest path algorithms
  • Segment Trees - For range queries and updates
  • Dynamic Programming Helpers - Memoization utilities and common DP patterns
  • Advanced Trees - AVL, Red-Black trees
  • String Algorithms - KMP, Rabin-Karp implementations

πŸ“ Changelog #

See CHANGELOG.md for detailed version history.

πŸ“„ License #

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ‘¨β€πŸ’» Author #

Vishwa Karthik
Software Engineer passionate about algorithms and clean code


0
likes
140
points
329
downloads

Publisher

verified publishervishwakarthik.in

Weekly Downloads

A scalable DSA utilities kit for Dart. Includes Heaps, DeQueues, and more.

Repository (GitHub)
View/report issues

Topics

#dsa-kit #built-in-methods

Documentation

API reference

License

MIT (license)

More

Packages that depend on dsa_kit