# 数据结构与算法

## 数据结构与算法

* [返回顶层目录](https://luweikxy.gitbook.io/machine-learning-notes/summary)
* [数据结构](https://luweikxy.gitbook.io/machine-learning-notes/data-structures-and-algorithms/data-structures)
* [算法思想](https://luweikxy.gitbook.io/machine-learning-notes/data-structures-and-algorithms/algorithms)
* [剑指offer](https://luweikxy.gitbook.io/machine-learning-notes/data-structures-and-algorithms/jianzhi-offer)
* [leetcode](https://luweikxy.gitbook.io/machine-learning-notes/data-structures-and-algorithms/leetcode)
* [编程语言](https://luweikxy.gitbook.io/machine-learning-notes/data-structures-and-algorithms/programming-language)

**算法 - Algorithms**

1. 排序算法：快速排序、归并排序、计数排序
2. 搜索算法：回溯、递归、剪枝技巧
3. 图论：最短路、最小生成树、网络流建模
4. 动态规划：背包问题、最长子序列、计数问题
5. 基础技巧：分治、倍增、二分、贪心

**数据结构 - Data Structures**

1. 数组与链表：单 / 双向链表、跳舞链
2. 栈与队列
3. 树与图：最近公共祖先、并查集
4. 哈希表
5. 堆：大 / 小根堆、可并堆
6. 字符串：字典树、后缀树

![map](https://3298324061-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpO5sn2FY1C9esHFJmo%2F-LxjeR9IOJHuOsfQ54dS%2F-LxjeTS_E580BMq6Vlxf%2Fmap.jpg?generation=1578126405011374\&alt=media)

## 参考资料

\===

[学习「数据结构与算法」，一个很赞的网站](https://zhuanlan.zhihu.com/p/31534696?utm_source=wechat_session\&utm_medium=social\&utm_oi=1107657858870767616)

[剑指Offer系列刷题笔记汇总](https://cuijiahua.com/blog/2018/02/basis_67.html)

[剑指Offer-在线编程-牛客网](https://www.nowcoder.com/ta/coding-interviews?query=\&asc=true\&order=\&page=1)

[牛客网-leetcode在线编程](https://www.nowcoder.com/ta/leetcode)


---

# 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://luweikxy.gitbook.io/machine-learning-notes/data-structures-and-algorithms.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.
