/algorithms

This repository contains examples and explanation on various data structure and algorithms samples in CS.

Primary LanguageJavaScriptMIT LicenseMIT

JavaScript Data Structures and Algorithms 🎉

This guide focuses on various data structures and algorithms in Computer Science.

Code samples and examples are commented out for illustrations on various code block to help even the non-cs to understand what is going on in the code.

Various algorithms are defined within function block scope and ported to work anywhere with test data.

Every function has a test example data to test its expectation and efficiency.

Also the Big O running time complexity is illustrated on some sorting and searching algorithm.

Data structures discussed

  1. Binary Tree
  2. Queue Data structure
  3. Stack Data structure
  4. Linked List Data Structure
  5. Array Data Structure

Algorithms discussed

  1. Searching Algorithms

    • Seqiential Search algorithm
    • Binary Search algorithm
  2. Sorting Algorithms

  3. Greedy algorithm

  4. Graph algorithm

  5. Dynamic programming

Big O Notation

Involves study of running time and space complexity of algorithms.

Time complexity is studied on searching and sorting algorithms to determine the best-case scenario of various algorithms.

Dynamic programming

It's a programming technique sometimes considered the opposite of recursion.

A dynamic programming solution starts at the bottom , solving small problems and combining them to form an overall solution to the big problem.

A dynamic programming solution builds a table, usually using an array, that holds the results of many subsolution as the problem is broken down. When the algorithm is complete, the solution is found in a distinct spot in the table.

These tutorials does not contain complete concept and knowledge to data structures and algorithms. I advise further research. Make google your home page 👍