Skip to content

Instantly share code, notes, and snippets.

@byigitt
Created January 21, 2025 12:23
Show Gist options
  • Select an option

  • Save byigitt/c1c2e6b387c33aa30a4d8eb044d6b5b2 to your computer and use it in GitHub Desktop.

Select an option

Save byigitt/c1c2e6b387c33aa30a4d8eb044d6b5b2 to your computer and use it in GitHub Desktop.
tips for interviews, noted for myself for later

If input array is sorted then

  • Binary search
  • Two pointers

If asked for all permutations/subsets then

  • Backtracking

If given a tree then

  • DFS
  • BFS

If given a graph then

  • DFS
  • BFS

If given a linked list then

  • Two pointers

If recursion is banned then

  • Stack

If must solve in-place then

  • Swap corresponding values
  • Store one or more different values in the same pointer

If asked for maximum/minimum subarray/subset/options then

  • Dynamic programming

If asked for top/least K items then

  • Heap
  • QuickSelect

If asked for common strings then

  • Map
  • Trie

Else

  • Map/Set for O(1) time & O(n) space
  • Sort input for O(nlogn) time and O(1) space
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment