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

A scalable DSA utilities kit for Dart. Includes MinHeap, MaxHeap, and more.

example/dsa_kit_example.dart

import 'package:dsa_kit/dsa_kit.dart';

void main() {
  final List<int> nums = [1, 2, 6, 4, 5];
  print(kLargestElement(nums, k: 3));
  print(kSmallestElement(nums, k: 3));
}

int kLargestElement(List<int> nums, {int k = 3}) {
  final heap = MinHeap<int>();

  for (final num in nums) {
    if (heap.size < k) {
      heap.push(num);
      print(heap.printHeap());
    } else if (num > (heap.peek() ?? -1)) {
      heap.pop();
      heap.push(num);
      print(heap.printHeap());
    }
  }
  return heap.peek() ?? -1;
}

int kSmallestElement(List<int> nums, {int k = 3}) {
  final heap = MaxHeap<int>();

  for (int num in nums) {
    if (heap.length < k) {
      heap.push(num);
    } else if (num < heap.peek()!) {
      heap.pop();
      heap.push(num);
    }
  }

  return heap.peek() ?? -1;
}
0
likes
0
points
329
downloads

Publisher

verified publishervishwakarthik.in

Weekly Downloads

A scalable DSA utilities kit for Dart. Includes MinHeap, MaxHeap, and more.

Repository (GitHub)
View/report issues

Topics

#dsa #built-in-methods

License

unknown (license)

More

Packages that depend on dsa_kit