Skip to content

varlackc/DataStructuresAndAlgorithms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Data Structures And Algorithms

Introduction

Data Structures and algorithms are the basis of software engineering.

Description

We can think of data structures as ways to organize data in order to implement abstractions. We can think of algorithms as instructions to give predictable outcomes based on a given input.

List of Data Structures

  • Arrays
  • Dinamic Arrays (Vectors)
  • Queues
  • Stacks
  • Linked Lists
    • Singly Linked Lists
    • Doubly Linked Lists
    • Circular Linked Lists
  • Skip List
  • Graphs
  • Trees
    • Binary Trees
    • Binary Search Trees
    • AVL Trees
    • Red Black Trees
    • B-Tree
    • Splay Tree
    • KD Tree
    • Cartesian Tree
  • Tries
  • Hash Table

List Of Algorithms

  • Sorting Algorithms
    • Bubble Sort
    • Insertion
    • Merge Sort
    • Quicksort
    • Timsort
    • Heapsort
    • Selection Sort
    • Tree Sort
    • Shell Sort
    • Bucket Sort
    • Radix Sort
    • Counting Sort
    • Cubesort

Asymptotic Complexity (Big O Notation)

  • Constant Complexity O(1)
  • Log Complexity O(log(n))
  • Linear Complexity O(n)
  • NLog Complexity O(NLog(N))
  • Quadratic Complexity O( N2 )
  • Cubic Complexity O( N3 )
  • Exponential Complexity O( CN )
  • Factorial Complexity O(N!)

About

Data Structure And Algorithms

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published