{"id":19955871,"url":"https://github.com/worst001/note_algorithm","last_synced_at":"2026-04-13T12:01:31.298Z","repository":{"id":209383183,"uuid":"723892311","full_name":"worst001/note_algorithm","owner":"worst001","description":"整理了数据结构与基础算法，以及一些经典的LeetCode算法","archived":false,"fork":false,"pushed_at":"2023-12-28T02:47:04.000Z","size":77630,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-01T15:43:38.322Z","etag":null,"topics":["algorithm","design","development","guide","learning","leetcode","leetcode-solutions","markdown","mkdocs","note","notebook"],"latest_commit_sha":null,"homepage":"http://note.grft.top/算法设计/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/worst001.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-11-27T01:22:26.000Z","updated_at":"2023-12-28T02:47:40.000Z","dependencies_parsed_at":"2023-12-28T03:34:26.308Z","dependency_job_id":null,"html_url":"https://github.com/worst001/note_algorithm","commit_stats":null,"previous_names":["worst001/mkdocs_algorithm","worst001/note_algorithm"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/worst001/note_algorithm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/worst001%2Fnote_algorithm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/worst001%2Fnote_algorithm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/worst001%2Fnote_algorithm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/worst001%2Fnote_algorithm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/worst001","download_url":"https://codeload.github.com/worst001/note_algorithm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/worst001%2Fnote_algorithm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31751705,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T09:16:15.125Z","status":"ssl_error","status_checked_at":"2026-04-13T09:16:05.023Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithm","design","development","guide","learning","leetcode","leetcode-solutions","markdown","mkdocs","note","notebook"],"created_at":"2024-11-13T01:29:12.302Z","updated_at":"2026-04-13T12:01:31.281Z","avatar_url":"https://github.com/worst001.png","language":"Java","readme":"\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\u003c!-- PROJECT SHIELDS --\u003e\n\n[![Contributors][contributors-shield]][contributors-url]\n[![Forks][forks-shield]][forks-url]\n[![Stargazers][stars-shield]][stars-url]\n[![Issues][issues-shield]][issues-url]\n[![MIT License][license-shield]][license-url]\n\u003c!-- [![LinkedIn][linkedin-shield]][linkedin-url] --\u003e\n\n\u003c!-- PROJECT LOGO --\u003e\n\n\u003c!-- 项目LOGO --\u003e\n\u003cbr /\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003c!-- \u003ca href=\"http://note.grft.top\"\u003e --\u003e\n  \u003c!--   \u003cimg src=\"https://xiyou-oss.oss-cn-shanghai.aliyuncs.com/mkdocs/logo.png\" alt=\"Logo\" width=\"480\" height=\"270\"\u003e --\u003e\n  \u003c!-- \u003c/a\u003e --\u003e\n\n  \u003ch3 align=\"center\"\u003e算法设计\u003c/h3\u003e\n\n  \u003cp align=\"center\"\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"http://note.grft.top/算法设计/\"\u003e\u003cstrong\u003e探索文档 »\u003c/strong\u003e\u003c/a\u003e\n    \u003cbr /\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\u003c!-- 目录 --\u003e\n\u003cdetails\u003e\n  \u003csummary\u003e目录\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\u003ca href=\"#关于项目\"\u003e关于项目\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#什么是数据结构\"\u003e什么是数据结构\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#什么是计算机算法\"\u003e什么是计算机算法\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#技术目录\"\u003e技术目录\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#贡献\"\u003e贡献\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#许可证\"\u003e许可证\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#联系方式\"\u003e联系方式\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#鸣谢\"\u003e鸣谢\u003c/a\u003e\u003c/li\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n## 关于项目\n\n整理了数据结构与基础算法，以及一些经典的LeetCode算法\n\n公网资料、笔记地址请访问这里 \n\n- 文档地址: [http://note.grft.top/算法设计/](http://note.grft.top/算法设计/)\n\n其他相关技术可以访问我的博客，主页地址请访问这里\n\n- 访问入口：[http://note.grft.top](https://mkdoc.grft.top)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003e回到顶部\u003c/a\u003e)\u003c/p\u003e\n\n## 什么是数据结构\n数据结构是一种组织和存储数据的方式，它提供了对数据的操作和访问方法。\n\n### 数组（Array）\n数组是一种线性数据结构，由相同类型的元素按顺序存储。可以通过索引来访问数组中的元素，具有常数时间复杂度的随机访问。\n\n### 链表（Linked List）\n链表是由节点组成的线性数据结构，每个节点包含一个数据项和指向下一个节点的引用。链表可以是单链表、双链表或循环链表。\n\n### 栈（Stack）\n栈是一种后进先出（LIFO）的数据结构，只允许在栈顶进行插入和删除操作。常见的应用场景包括函数调用、表达式求值和撤销操作等。\n\n### 队列（Queue）\n队列是一种先进先出（FIFO）的数据结构，只允许在队尾插入元素，在队头删除元素。常见的应用场景包括任务调度、消息传递和缓冲区管理等。\n\n### 树（Tree）\n树是一种非线性数据结构，由节点和边组成。树的每个节点可以有多个子节点，但每个节点只有一个父节点。常见的树结构包括二叉树、堆和平衡树等。\n\n### 图（Graph）\n图是由节点和边组成的非线性数据结构，用于表示对象之间的关系。图可以是有向图或无向图，支持各种算法如最短路径、最小生成树和网络流等。\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003e回到顶部\u003c/a\u003e)\u003c/p\u003e\n\n## 什么是计算机算法\n计算机算法是一系列定义明确的指令，用于解决某个问题或执行某项任务。算法在计算机科学与编程领域中非常关键，它们能够让计算机执行各种复杂的数据处理工作。一个好的算法能够高效地运用计算资源，比如处理器时间和内存空间，来快速且准确地得出结果。\n\n算法的设计和分析主要关注算法的正确性和效率。效率通常涉及算法的时间复杂度（即算法所需时间）和空间复杂度（即算法所需内存空间）。时间和空间复杂度通常用大O表示法（Big O notation）来描述，该表示法可以大致描述算法的规模增长对时间或空间需求的影响。\n\n### 搜索算法\n全文搜索算法，如倒排索引、布尔查询等，用于提供搜索引擎服务。\n图搜索算法，如BFS（广度优先搜索）和DFS（深度优先搜索），用于社交网络图谱分析。\n\n### 排序算法\n快速排序、归并排序、堆排序等算法用于数据排序，提升用户界面和体验，如电商平台的商品列表排序。\n\n### 压缩算法\n赫夫曼编码、LZ77、LZ78、Deflate等用于数据压缩，在网络传输中减少数据量，提高效率。\n\n### 加密算法\n对称加密算法（如AES）、非对称加密算法（如RSA）和散列函数（如SHA系列）用于数据加密和认证，保障用户数据隐私和网络通信安全。\n\n### 机器学习算法\n监督学习算法（如决策树、支持向量机、神经网络），无监督学习算法（如K-Means、PCA）和强化学习算法在推荐系统、广告投放、语音识别等方面有着广泛应用。\n\n### 推荐算法\n协同过滤、基于内容的推荐、混合推荐算法等，用于个性化推荐，如电影、音乐、新闻等。\n\n### 缓存算法\n最近最少使用（LRU），最不经常使用（LFU）和随机替换（Random Replacement）等算法用于缓存管理，提高系统的性能和响应速度。\n\n### 网络路由和流量控制算法\nDijkstra算法和A*算法用于网络路由的计算，而拥塞控制算法（如TCP/IP协议中的拥塞避免和控制算法）用于流量控制。\n\n### 验证码算法\n不同类型的验证码算法，如基于字符的验证码、图像识别验证码或逻辑问题验证码，用于防止自动化的垃圾邮件和网络攻击。\n\n### 分布式系统算法\nPaxos和Raft等一致性算法，用于分布式系统中的状态一致性和故障容错。\n\n### 数据库查询优化算法\n索引查询算法、查询执行计划生成算法，用于数据库性能优化。\n上述算法只是互联网应用中常见算法的一部分，各个领域会根据具体需求和场景进行算法的选择、优化和实现。随着技术的发展和新算法的不断涌现，互联网应用中的算法也在不断进化。\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003e回到顶部\u003c/a\u003e)\u003c/p\u003e\n\n\n## 技术目录\n\n[目录与大纲](index.md)\n\n### 数据结构与算法\n\n+ [数据结构详细笔记](https://github.com/rogertan30/Love-Leetcode)\n+ [基础算法在线图示](https://www.cs.usfca.edu/~galles/visualization/Algorithms.html)\n+ [尚硅谷数据结构与算法](尚硅谷课件/笔记/尚硅谷图解Java数据结构和算法.pdf)\n\n### LeetCode 案例分析\n\n+ [LeetCode 官网](https://leetcode.cn/problemset/all/)\n\n#### 动态规划\n\n+ [动态规划之KMP字符匹配算法](算法汇总/动态规划系列/动态规划之KMP字符匹配算法.md)\n+ [动态规划之博弈问题](算法汇总/动态规划系列/动态规划之博弈问题.md)\n+ [动态规划之四键键盘](算法汇总/动态规划系列/动态规划之四键键盘.md)\n+ [动态规划之正则表达](算法汇总/动态规划系列/动态规划之正则表达.md)\n+ [动态规划设计之最长递增子序列](算法汇总/动态规划系列/动态规划设计之最长递增子序列.md)\n+ [动态规划详解进阶](算法汇总/动态规划系列/动态规划详解进阶.md)\n+ [团灭股票问题](算法汇总/动态规划系列/团灭股票问题.md)\n+ [子序列问题模板](算法汇总/动态规划系列/子序列问题模板.md)\n+ [抢房子](算法汇总/动态规划系列/抢房子.md)\n+ [最优子结构](算法汇总/动态规划系列/最优子结构.md)\n+ [最长公共子序列](算法汇总/动态规划系列/最长公共子序列.md)\n+ [编辑距离](算法汇总/动态规划系列/编辑距离.md)\n+ [背包问题](算法汇总/动态规划系列/背包问题.md)\n+ [贪心算法之区间调度问题](算法汇总/动态规划系列/贪心算法之区间调度问题.md)\n+ [高楼扔鸡蛋进阶](算法汇总/动态规划系列/高楼扔鸡蛋进阶.md)\n+ [高楼扔鸡蛋问题](算法汇总/动态规划系列/高楼扔鸡蛋问题.md)\n\n\n#### 算法与思维\n\n+ [FloodFill算法详解及应用](算法汇总/算法思维系列/FloodFill算法详解及应用.md)\n+ [twoSum问题的核心思想](算法汇总/算法思维系列/twoSum问题的核心思想.md)\n+ [UnionFind算法应用](算法汇总/算法思维系列/UnionFind算法应用.md)\n+ [UnionFind算法详解](算法汇总/算法思维系列/UnionFind算法详解.md)\n+ [为什么推荐算法4](算法汇总/算法思维系列/为什么推荐算法4.md)\n+ [二分查找详解](算法汇总/算法思维系列/二分查找详解.md)\n+ [信封嵌套问题](算法汇总/算法思维系列/信封嵌套问题.md)\n+ [几个反直觉的概率问题](算法汇总/算法思维系列/几个反直觉的概率问题.md)\n+ [前缀和技巧](算法汇总/算法思维系列/前缀和技巧.md)\n+ [区间交集问题](算法汇总/算法思维系列/区间交集问题.md)\n+ [区间调度问题之区间合并](算法汇总/算法思维系列/区间调度问题之区间合并.md)\n+ [双指针技巧](算法汇总/算法思维系列/双指针技巧.md)\n+ [回溯算法详解修订版](算法汇总/算法思维系列/回溯算法详解修订版.md)\n+ [字符串乘法](算法汇总/算法思维系列/字符串乘法.md)\n+ [学习数据结构和算法的高效方法](算法汇总/算法思维系列/学习数据结构和算法的高效方法.md)\n+ [常用的位操作](算法汇总/算法思维系列/常用的位操作.md)\n+ [洗牌算法](算法汇总/算法思维系列/洗牌算法.md)\n+ [滑动窗口技巧](算法汇总/算法思维系列/滑动窗口技巧.md)\n+ [烧饼排序](算法汇总/算法思维系列/烧饼排序.md)\n+ [算法学习之路](算法汇总/算法思维系列/算法学习之路.md)\n+ [递归详解](算法汇总/算法思维系列/递归详解.md)\n\n#### 高频面试案例\n\n+ [koko偷香蕉](算法汇总/高频面试系列/koko偷香蕉.md)\n+ [k个一组反转链表](算法汇总/高频面试系列/k个一组反转链表.md)\n+ [LRU算法](算法汇总/高频面试系列/LRU算法.md)\n+ [一行代码解决的智力题](算法汇总/高频面试系列/一行代码解决的智力题.md)\n+ [二分查找判定子序列](算法汇总/高频面试系列/二分查找判定子序列.md)\n+ [判断回文链表](算法汇总/高频面试系列/判断回文链表.md)\n+ [合法括号判定](算法汇总/高频面试系列/合法括号判定.md)\n+ [如何去除有序数组的重复元素](算法汇总/高频面试系列/如何去除有序数组的重复元素.md)\n+ [子集排列组合](算法汇总/高频面试系列/子集排列组合.md)\n+ [座位调度](算法汇总/高频面试系列/座位调度.md)\n+ [打印素数](算法汇总/高频面试系列/打印素数.md)\n+ [接雨水](算法汇总/高频面试系列/接雨水.md)\n+ [最长回文子串](算法汇总/高频面试系列/最长回文子串.md)\n+ [水塘抽样](算法汇总/高频面试系列/水塘抽样.md)\n+ [消失的元素](算法汇总/高频面试系列/消失的元素.md)\n+ [缺失和重复的元素](算法汇总/高频面试系列/缺失和重复的元素.md)\n\n#### 工作中遇到的一些算法\n\n+ [工作中遇到的一些算法](学习笔记/工作中遇到的一些算法.md)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003e回到顶部\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- 贡献 --\u003e\n\n## 贡献\n\n贡献是使开源社区成为一个如此令人惊叹的地方，以学习、激励和创造。您所做的任何贡献都将非常感谢。\n\n如果您对使这个项目变得更好有建议，请 fork 该仓库并创建 pull request。您也可以打开一个带有“enhancement”标签的问题。不要忘记给这个项目点个星！再次感谢！\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003e返回顶部\u003c/a\u003e)\u003c/p\u003e\n\n\n\u003c!-- 许可证 --\u003e\n## 许可证\n\n根据 MIT 许可证进行分发。更多信息请参见 [LICENSE.txt](LICENSE)。\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003e返回顶部\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- 联系方式 --\u003e\n## 联系方式\n\n关注我: [小昊子](https://github.com/worst001)\n\n博客地址: [http://note.grft.top](http://note.grft.top)\n\n项目链接: [https://github.com/worst001/note_algorithm](https://github.com/worst001/note_algorithm)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003e返回顶部\u003c/a\u003e)\u003c/p\u003e\n\n## 鸣谢\n\n因为仓库与文档的数量比较大，有些借鉴资料忘了在`参考文档`部分提及原作者与原仓库，若有疏漏请告诉，我及时补上。\n\n所有引用的原资料都确认是开源认证，若有侵权请告知。\n\n[尚硅谷系列教程资料](http://www.atguigu.com/opensource.shtml)\n\n[https://www.cs.usfca.edu/~galles/visualization/Algorithms.html](https://www.cs.usfca.edu/~galles/visualization/Algorithms.html)\n\n[https://github.com/rogertan30/Love-Leetcode](https://github.com/rogertan30/Love-Leetcode)\n\n[https://github.com/labuladong/fucking-algorithm](https://github.com/labuladong/fucking-algorithm)\n\n[https://openai.com/chatgpt](https://openai.com/chatgpt)\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003e返回顶部\u003c/a\u003e)\u003c/p\u003e\n\n\n\u003c!-- links --\u003e\n[your-project-path]:shaojintian/Best_README_template\n[contributors-shield]: https://img.shields.io/github/contributors/worst001/note_algorithm.svg?style=flat-square\n[contributors-url]: https://github.com/worst001/note_algorithm/graphs/contributors\n[forks-shield]: https://img.shields.io/github/forks/worst001/note_algorithm.svg?style=flat-square\n[forks-url]: https://github.com/worst001/note_algorithm/network/members\n[stars-shield]: https://img.shields.io/github/stars/worst001/note_algorithm.svg?style=flat-square\n[stars-url]: https://github.com/worst001/note_algorithm/stargazers\n[issues-shield]: https://img.shields.io/github/issues/worst001/note_algorithm.svg?style=flat-square\n[issues-url]: https://img.shields.io/github/issues/worst001/note_algorithm.svg\n[license-shield]: https://img.shields.io/github/license/worst001/note_algorithm.svg?style=flat-square\n[license-url]: https://github.com/worst001/note_algorithm/blob/main/LICENSE.txt\n\u003c!-- [linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=flat-square\u0026logo=linkedin\u0026colorB=555 --\u003e\n\u003c!-- [linkedin-url]: https://linkedin.com/in/shaojintian --\u003e\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fworst001%2Fnote_algorithm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fworst001%2Fnote_algorithm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fworst001%2Fnote_algorithm/lists"}