/knowledge-base

A lightweight programming knowledge base with examples

Primary LanguageJava

Knowledge Base

A lightweight programming knowledge base with examples. Although is Java oriented the most of the concepts are language agnostic.

Short content

  1. Java Concurrency
  2. Data Structures
  3. Design Patterns
  4. Sorting Algorithms
  5. Java Interview Questions

Java Concurrency

Data Structures

See the packages here.

Design patterns

See the packages here.

Sorting Algorithms

See the packages here.

Implementation link Average case Worst case Memory Stable Restrictions
Insertion Sort n^2 n^2 1 yes no
Binary Insertion Sort n^2 n^2 1 yes no
Selection Sort n^2 n^2 1 no no
Bubble Sort n^2 n^2 1 yes no
Merge Sort n.log(n) n.log(n) n yes no
Quick Sort n.log(n) n^2 n.log(n) no no
Heap Sort n.log(n) n.log(n) 1 no no
Counting Sort n n^2 n yes integers
Bucket Sort n n^2 n yes integers
Radix Sort n n n no integers