Skip to content

pgmanutd/data-structures-and-algorithms

Repository files navigation

Data Structures and Algorithms · GitHub license CI Status Coverage Status BCH compliance Known Vulnerabilities

This repository contains Typescript based examples of many popular algorithms and data structures with functional twist (Functional over Imperative Programming) using RamdaJS.

☝ Note that this project is meant to be used for learning and researching purposes only and it is not meant to be used for production.

From Wikipedia: In computer science, a data structure is a data organization, management and storage format that enables efficient access and modification. More precisely, a data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data.

From Wikipedia: In mathematics and computer science, an algorithm (/ˈælɡərɪðəm/) is an unambiguous specification of how to solve a class of problems. Algorithms can perform calculation, data processing, and automated reasoning tasks.

Big O Notation

We are not concerned with space complexity when we enter the world of functional programming. Though time complexity does matter and we will try to cover it as much as possible.

In case of recursive functions, we will try to ensure that all of them are tail call optimized.

Check Big O CheatSheet below:

image

image

Contributing Guide

Anyone can help to make this project better - check out the Contributing Guide!

Code of Conduct

Please adhere to Code of Conduct.

Issues

Want to report a bug or have a new feature request? You can create one here.

License

Licensed under the MIT licensed.