🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more

iron-datastructures

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

iron-datastructures

A set of useful data structures, including circular queue, binary tree/graph, linked list, and stack.

1.4
Maintainers
1

iron_datastructures

This is a set of (potentially) useful data structures, including:

  • circular queue
  • graph/binary tree
  • linked list
  • stack

And, each data structure has some pretty epic methods built in. For example, the graph has both a depth first and a breadth first search built right in! Take a look at it!

What's different about this package, eh? Just another bunch of random data structures.

…to which I say, not so fast! This package is designed with type safety in mind. It is 100% type hinted, to give you that extra peace of mind when writing great code.

Not only this, but there are of course tests built in! Run them easily with python3 -m doctest iron_datastructures/*.py (add a -v for extra verbosity!).

And there's more! This package has useful examples of what you can do with each data structure. Simply take a look at the source files - for example, circular_queue.py:

Initialize a queue and add an acceptable number of items to it:
>>> myQueue = CircularQueue[str](6)
>>> myQueue.enQueue("Hello")
>>> myQueue.enQueue("there,")
>>> myQueue.enQueue("I")
>>> myQueue.enQueue("am")
>>> myQueue.enQueue("an")
>>> myQueue.enQueue("octopus.")

Check queue is full:
>>> myQueue.isFull()
True

Try to add too many items:
>>> myQueue.enQueue("overflow!")
Traceback (most recent call last):
    ...
Exception: Queue is full

This cool example, and many more like it, are bundled right up in the very same source files you'll be using in whatever fantabulous, exquisite creation you're working on.

Enjoy!

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts