Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/roseduan/awesome-algorithm-cn
精选了一系列很棒的学习或者练习算法的网址、项目等,受到 awesome-awesomeness 以及其他 awesome 系列项目的启发。
https://github.com/roseduan/awesome-algorithm-cn
List: awesome-algorithm-cn
Last synced: 23 days ago
JSON representation
精选了一系列很棒的学习或者练习算法的网址、项目等,受到 awesome-awesomeness 以及其他 awesome 系列项目的启发。
- Host: GitHub
- URL: https://github.com/roseduan/awesome-algorithm-cn
- Owner: roseduan
- License: mit
- Created: 2021-05-20T12:24:20.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-06-06T07:33:29.000Z (over 3 years ago)
- Last Synced: 2024-04-11T22:05:59.079Z (7 months ago)
- Size: 12.7 KB
- Stars: 15
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- ultimate-awesome - awesome-algorithm-cn - 精选了一系列很棒的学习或者练习算法的网址、项目等,受到 awesome-awesomeness 以及其他 awesome 系列项目的启发。. (Other Lists / PowerShell Lists)
README
# awesome-algorithm-cn
精选了一系列很棒的学习或者练习算法的网址、项目等,受到 [awesome-awesomeness](https://github.com/bayandin/awesome-awesomeness) 以及其他 awesome 系列项目的启发。
- [awesome-algorithm-cn](#awesome-algorithm-cn)
- [网站](#网站)
- [在线课程](#在线课程)
- [书籍](#书籍)
- [备忘单](#备忘单)
- [Github 仓库](#Github-仓库)
- [在线评审](#在线评审)
- [工具](#工具)## 网站
一些你可以用来学习经典算法的网站。
* [A Visual Guide to Graph Traversal Algorithms](https://workshape.github.io/visual-graph-algorithms/) - 一个交互式可视化学习图遍历算法的网站。
* [W3School](https://www.w3schools.in/data-structures-tutorial/intro/) - 完善的数据结构和算法的教程,相关代码很详细。
* [Algorithm Visualizer](http://algo-visualizer.jasonpark.me/) - 数十种动画算法(带有代码),你还可以创建自己的动画算法。
* [Algorithms Visualization](http://bost.ocks.org/mike/algorithms/) - 关于算法可视化的一些文章。
* [Big-O Cheat Sheet](http://bigocheatsheet.com/) - 涵盖了计算机科学领域通用算法的大 O 复杂度。
* [Code-Drills](https://code-drills.com/tools/comparator) - 算法问题推荐(包括 Codeforces, Codechef 和 Spoj 平台)。
* [CP-Algorithms](https://cp-algorithms.com/) - 介绍在计算机领域流行的算法与数据结构的网站。
* [Data Structure Visualizations](http://www.cs.usfca.edu/~galles/visualization/Algorithms.html) - 以动画展示你对一些数据结构的操作的网站。
* [Geeks for Geeks](http://www.geeksforgeeks.org/fundamentals-of-algorithms/) - 包含大量解释详细并且完全实现的算法。
* [Path Finding](https://qiao.github.io/PathFinding.js/visual/) - 可视化展示一些图论算法,比如 A,IDA,BFS 等等。
* [Programiz](https://www.programiz.com/dsa) - 易于学习的数据结构和算法教程,配有完善的代码示例。
* [Rosetta Code](http://rosettacode.org/wiki/Rosetta_Code) - 一个编程主题站点,旨在以不同的编程语言介绍许多算法和数据结构的实现。* [Sorting Algorithms](http://www.sorting-algorithms.com/) - 简洁易懂的排序算法动画,附有代码和评论。
* [Stoimen's web log](http://www.stoimen.com/) - 包含一些解释得很棒的算法。
* [The Sound of Sorting](http://panthema.net/2013/sound-of-sorting/) - 排序算法的声音,在听觉和视觉上感受排序算法。
* [VisuAlgo](http://visualgo.net) - 通过动画将数据结构和算法可视化展示。
* [Learnersbucket](https://learnersbucket.com/) - 使用 JavaScript 实现的数据结构和算法教程。
* [redblobgames](https://www.redblobgames.com/) - 交互可视化的算法解释,使用电脑游戏当中的一些例子。## 在线课程
一些免费并且高质量的在线课程。
- [Algorithms: Divide and Conquer, Sorting and Searching, and Randomized Algorithms](https://www.coursera.org/learn/algorithms-divide-conquer) - 主要的内容有:大 O 渐进表示法、排序和搜索、分治思想以及随机算法。
- [Algorithms: Graph Search, Shortest Paths, and Data Structures](https://www.coursera.org/learn/algorithms-graphs-data-structures) - 主要的内容有:数据结构,图原语及其应用。
- [Algorithms: Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming](https://www.coursera.org/learn/algorithms-greedy) - 主要的内容:贪心算法和动态规划。
- [Algorithms: Shortest Paths Revisited, NP-Complete Problems and What To Do About Them](https://www.coursera.org/learn/algorithms-npcomplete) - 主要的内容:最短路径,NP 完备性和它对算法设计者的意义,以及处理计算棘手问题的策略。
- [Algorithms, Part I](https://www.coursera.org/learn/algorithms-part1/home/welcome) - 本课程涵盖了每个程序员需要知道的算法和数据结构的基本信息。第一部分介绍基本的数据结构、排序和搜索算法。
- [Algorithms, Part II](https://www.coursera.org/learn/algorithms-part2) - 第二部分重点介绍图和字符串处理算法。
- [Khan Academy Algorithms](https://www.khanacademy.org/computing/computer-science/algorithms) - 由 Tomas Cormen 和 Devin Balkcom 主持的算法课程。
- [MIT - 6-006](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/lecture-videos/) - 解释得很好的算法。
- [MIT - 6-046j](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-introduction-to-algorithms-sma-5503-fall-2005/video-lectures/) - 类似于前一个,只不过是不同的算法。
- [MIT - 6-00sc](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-computer-science-and-programming-spring-2011/index.htm) - 这是一个简单而又解释得很好的算法介绍。
- [Udacity Intro to Algorithms](https://www.udacity.com/course/intro-to-algorithms--cs215) - 基于 Python 的算法课程。
- [Algorithms in Motion](https://www.manning.com/livevideo/algorithms-in-motion) - 这是一门面向算法初学者,使用了大量有趣的插图,基于书籍《Grokking Algorithms》的算法课程。## 书籍
学习算法的一些常见书籍。
### 算法和数据结构
#### 英文
* [Algorithm Design](https://www.pearsonhighered.com/program/Kleinberg-Algorithm-Design/PGM319216.html) - 非常简洁直白的算法分析书籍。
* [Algorithms](http://algs4.cs.princeton.edu/home/) - 使用 Java 实现的算法示例,良好的实践,可视化教程,带有免费的在线资源。
* [Algorithms and Data Structures in JavaScript](https://gum.co/dsajs) - 经典的算法和数据结构,由 JavaScript 实现。
* [Algorithms in a Nutshell](https://www.amazon.com/Algorithms-Nutshell-In-OReilly/dp/059651624X) - 由 George T. Heineman 撰写。#### 中文
* [算法·第四版](https://book.douban.com/subject/19952400/) - 算法领域的经典书籍,涵盖每位程序员应知应会的 50 种算法。
* [算法导论](https://book.douban.com/subject/20432061/) - 经典算法书籍,内容丰富、结构合理、逻辑清晰。
* [大话数据结构](https://book.douban.com/subject/6424904/) - 以趣味的方式叙述数据结构,并引用了各种生活知识来类比。
* [啊哈!算法](https://book.douban.com/subject/25894685/) - 一本充满智慧和趣味的算法入门书。
* [算法图解](https://book.douban.com/subject/26979890/) - 示例丰富,图文并茂,以让人容易理解的方式阐释了算法。## 备忘单
* [The Technical Interview Cheat Sheet](https://gist.github.com/TSiege/cbb0507082bb18ff7e4b)
* [Princeton DS Cheat Sheet](https://algs4.cs.princeton.edu/cheatsheet/)
* [CLRS in short](https://sinon.org/algorithms//#data-structures)
* [Rice university DS course in short](https://www.clear.rice.edu/comp160/data1.html)
* [Useful Reddit thread](https://www.reddit.com/r/learnprogramming/comments/3gpvyx/algorithms_and_data_structures_cheat_sheets/)
* [Algo Deck](https://github.com/teivah/algodeck/)## Github 仓库
一些使用各种编程语言实现算法的仓库。
### C
* [c-algorithms](https://github.com/fragglet/c-algorithms) by @fragglet,一些使用 C 语言实现的常用数据结构及算法。
* [TheAlgorithms/C](https://github.com/TheAlgorithms/C) by @TheAlgorithms,The Algorithms 系列的 C 语言实现。### C++
* [xtaci/algorithms](https://github.com/xtaci/algorithms) by @xtaci,使用 C++ 实现的数据结构和算法。
* [PetarV-/Algorithms](https://github.com/PetarV-/Algorithms) by @PetarV-,包含一些高级数据结构和算法。
* [ProAlgos-Cpp](https://github.com/ProAlgos/ProAlgos-Cpp) by @ProAlogs,C++ 实现的一些知名的算法。
* [algorithmica-org/implementations](https://github.com/algorithmica-org/implementations) by @algorithmica-org,一些算法的简洁实现。### C#
* [classic-algorithms-c-sharp](https://github.com/shkolovy/classic-algorithms-c-sharp) by @shkolovy,使用 C# 实现的经典算法。
* [C-Sharp-Algorithms](https://github.com/aalhour/C-Sharp-Algorithms) by @aalhour,标准的数据结构和算法。
* [Advanced-Algorithms](https://github.com/justcoding121/Advanced-Algorithms) by @justcoding121,100+ 数据结构和算法的例子。### Erlang
### Go
### Java
### JavaScript
### Lua
### Objective-C
### Python
### Ruby
### Scala
### Swift
### 语言无关(或多语言)
## 在线评审
可以从这些网站中练习你学习到的相关知识。
- [A2 Online Judge](https://a2oj.com/) - Online Judge and problem archive.
- [ACM-ICPC Live Archive](https://icpcarchive.ecs.baylor.edu/) - Hundreds of problems from previous ACM-ICPC Regionals and World Finals.## 工具