Skip to content

Core data structures and algorithms implemented in Java from scratch. Very useful to crack the coding interviews at top tech companies.

License

Notifications You must be signed in to change notification settings

rosberglinhares/DataStructuresAndAlgorithms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

Core Data Structures and Algorithms Implementation

Core data structures and algorithms implemented in Java from scratch. Very useful to crack the coding interviews at top tech companies. The theoretical part of this project is based on the following books:

Content Overview:

  • Data Structures

    • Big O

      Category Data Structure Operation Time Complexity Space Complexity
      Arrays Unordered Array Linear search O(N) O(1)
      Insertion O(1) O(1)
      Deletion O(N) O(1)
      Ordered Array Binary search O(log N) O(1)
      Insertion O(N) O(1)
      Deletion O(N) O(1)
      Stacks and Queues Stack (array) Push O(1) O(1)
      Pop O(1) O(1)
      Size O(1) O(1)
      Stack (linked list) Push O(1) O(1)
      Pop O(1) O(1)
      Size O(N) O(1)
  • Algorithms

    • Big O

      Category Algorithm Time Complexity Space Complexity
      Searching Iterative Binary Search O(log N) O(1)
      Recursive Binary Search O(log N) O(log N)
      Sorting Iterative Bubble Sort O(N²) O(1)
      Recursive Bubble Sort O(N²) O(N)
      Iterative Selection Sort O(N²) O(1)
      Recursive Selection Sort O(N²) O(N)
      Iterative Insertion Sort O(N²) O(1)
      Recursive Insertion Sort O(N²) O(N)