/stingRAY

CodeSnipets.

Primary LanguageC++

Algorithms.

reference:

mathemathical representation of complexity.

  1. Upper Bound runtime complexity of an algorithm (Big-Oh notation)
  2. Strict Upper Bound runtime complexity of an algorithm (Little-Oh notation)
  3. Average Bound runtime complexity of an algorithm (theta notation)
  4. Strict Lower Bound runtime complexity of an algorithm (Little-Omega notation)
  5. Lower Bound runtime complexity of an algorithm (Big-Omega notation)

general complexities.

  1. constant time cmplexity
  2. Linear time complexity
  3. Logarithmic time complexity
  4. Quadratic time complexity
  5. Exponential time complexity

reference :
Towards data science
Wikipedia

Datastructures

Difference between Linear and Hierarchical datastructures
non linear datastructures

Linear data structure
Hierarchical(Non-Linear) data structure
Homogenous data structure
Heterogenous data structure

String Datastructure

Array Datastructure

Array (Static sized array)
Vector (Dynamic sized array)

arrays are sometimes refered to as lists
elements stored in contiguous memory cells
homogenous data elements
linear datastructure
can be indexed
once created, cannot be resized and must be coppied to new (bigger sized) array, element wise in order to insert new elements

operation that can be performed on arrays:
insert
delete
traverse
search

Linked List Datastructure

Single Linked List (forward traversing)
Double Linked List (didirectional traversing)
Circular Linked List

Queue Datastructure

Priority Queue
Dequeue

Stack Datastructure


Tree Datastructure

Binary Search Tree
AVL Tree / Hight Balanced Binary Tree
Ternary Search Tree / n-ary Search Tree
Breadth First Tree
Depth first Tree
Spanning Tree
Minimum / Maximum Spanning  Tree
Red Black Tree
Splay Tree
Radix Tree (Trie)
Suffix Tree
Huffman Tree
B- Tree
B+ Tree
Binary Tree
R Tree
Counted B Tree
K-D Tree
Decission Tree
Markel Tree
Fenwick Tree
Range Tree
ab tree
Quad Tree

Graph Datastructure

Adjacency Matrix
Incidence Matrix
Adjacency List

Map Datastructure

aka HashTable, HashMap, Dictionaries, Lookup Tables, Assosiative Arrays.
Map (ordered)
MultiMap (unordered)

Set Datastructure

Set (ordered list)
MultiSet (unordered list)

Slotmap Datastructure


Trie Datastructure


Pair Datastructure


Heap


Octress


Matrices


Sparse Matrices


Algorithms.

Sorting Algorithms.

Bubble sort

Insertion sort

Selection sort

Merge sort

Quick sort

Counting sort

Redix sort

Topological sort

Path Finding Algorithms (Singla and Multiple Agent Path Planning).

A*

space-time A*

D*

Theta*

DFS (Depth First Search)

BFS (Breadth First Search)

Dijkshtra

uniform cost search

OCRA (optimal reciprocal collision avaiodance)

JPS (Jump Point Search)

SIPP (Safe Interval Path Planning)

Design Patterns

Structural Patterns


Behavioral Patterns