# 序言

**原文**：[The top data structures you should know for your next coding interview](http://link.zhihu.com/?target=https%3A//medium.freecodecamp.org/the-top-data-structures-you-should-know-for-your-next-coding-interview-36af0831f5e3)

**译者**：[Fundebug](http://link.zhihu.com/?target=https%3A//www.fundebug.com/)

1976年，一个瑞士计算机科学家写一本书《Algorithms + Data Structures = Programs》。即：**算法 + 数据结构 = 程序**。40多年过去了，这个等式依然成立。

### 什么是数据结构？&#x20;

数据结构是计算机存储、组织数据的方式。对于特定的数据结构(比如数组)，有些操作效率很高(读某个数组元素)，有些操作的效率很低(删除某个数组元素)。程序员的目标是为当前的问题选择最优的数据结构。

### 什么是算法？

算法是解决特定问题求解步骤的描述，在计算机中表现为指令的有限序列，并且每条指令表示一个或多个操作。（《大话数据结构》）

![](/files/-Lbak6OM4f9kyWHV16FB)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://data-structure-and-algorithm.gitbook.io/project/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
