Baidu interview algorithm topic

1. Basic data structure

  1. What are data structures? A brief introduction to the basic concepts and classification of data structures.
  2. What is an array? How to define and implement an array?
  3. What is a linked list? How to define and implement a linked list?
  4. What is a queue? How to define and implement a queue?
  5. What is a stack? How to define and implement a stack?

2. Sorting and Searching

  1. What is a sorting algorithm? Briefly introduce several common sorting algorithms, such as bubble sort, selection sort, insertion sort, quick sort, etc.
  2. What is binary search? How to implement binary search?
  3. What is linear search? How to implement linear search?
  4. What is a hash table? How to implement a hash table?

3. Graph theory

  1. What is a graph? How to define and implement a graph?
  2. What is graph traversal? Briefly introduce the implementation methods of depth-first search and breadth-first search.
  3. What is a minimum spanning tree? How to solve minimum spanning tree?
  4. What is the shortest path? How to solve the single source shortest path problem?

4. Dynamic programming

  1. What is Dynamic Programming? What are the application scenarios of dynamic programming?
  2. What is top-down dynamic programming? How to implement top-down dynamic programming?
  3. What is bottom-up dynamic programming? How to implement bottom-up dynamic programming?
  4. What is Memoized Search? How to implement memory search?

Five, linked list and stack

  1. What are the basic operations of linked list? A brief introduction to insert, delete, and rename operations for linked lists.
  2. What are the basic operations of the stack? A brief introduction to stack insertion and deletion operations.
  3. How to implement a simple LRU cache using a linked list?
  4. How to use the stack to implement an expression evaluation?

Six, tree and binary tree

  1. What are the basic concepts of trees? Briefly describe the depth and breadth of the tree.
  2. What are the basic concepts of binary tree? Briefly introduce the properties and traversal methods of binary trees.
  3. How to use a binary tree to implement an expression evaluation?
  4. How to implement a Trie tree using a binary tree?

7. String operations and regular expressions

  1. What are the basic operations on strings? A brief introduction to string encoding and decoding methods.
  2. What is the basic syntax of regular expressions? How to use regex for string matching?
  3. How to use string manipulation to implement a string inversion function?
  4. How to use string operations to implement a string splitting function?

8. Greedy Algorithm and Backtracking Algorithm

  1. What are the basic concepts of greedy algorithm? What are the application scenarios of the greedy algorithm?
  2. What are the basic concepts of backtracking algorithm? What are the application scenarios of the backtracking algorithm?
  3. How to use the greedy algorithm to solve the knapsack problem?
  4. How to use the backtracking algorithm to solve the N queens problem?

Guess you like

Origin blog.csdn.net/u011046042/article/details/132578478