Here's a checklist of things that you should probably be prepared to know in a technical interview:
Data types
Basic Bitwise Operations
String Operations
Arrays
Linked Lists
- Singly Linked
- Doubly Linked
- Circular Linked
Queues
Stacks
Heaps
Trees
- Binary Trees
- Binary Search Trees
- Tries
- Self Balancing Trees
Traversing Trees
- Breadth First Search - BFS
- Depth First Search - DFS
- Preorder, Inorder, Postorder
Graphs
- Dijkstra's Algorithm / A* Search
Hash Maps
- Handling Collisions
Sorting algorithms
- Insertion
- Selection
- Merge
- Quick
Time Complexities
- Sorting Algorithms
- Big-O Cheat Sheet
- Data Structures and Algorithms Overview
- Algorithm Implementations
- Top 10 Algorithms for Coding Interviews
- Practical Object-Oriented Design in Ruby by Sandy Metz
- [LeetCode Online Judge] (https://leetcode.com/problemset/algorithms/)
- HackerRank Online Judge
- [Project Euler] (https://projecteuler.net/)
- Algorithms, 4th edition, by Robert Sedgewick and Kevin Wayne
- Introduction to Algorithms, 3rd Edition, by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein (also referred as CLRS)
- Think Complexity, by Allen Downey
- Problems on Algorithms, 2nd edition, by Ian Parberry and William Gasarch
- Data Structures and Algorithms in Java
- Cracking the Coding Interview, 6th edition, by Gayle Laakmann McDowell