[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-2328":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":19,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":20,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":24,"readmeContent":25,"aiSummary":26,"trendingCount":16,"starSnapshotCount":16,"syncStatus":27,"lastSyncTime":28,"discoverSource":29},2328,"algo","wangzheng0822\u002Falgo","wangzheng0822","数据结构和算法必知必会的50个代码实现","",null,"Python",23162,6996,819,107,0,12,45,"Apache License 2.0",false,"master",true,[],"2026-06-12 02:00:40","# 数据结构和算法必知必会的50个代码实现\n### 微信搜索我的公众号“小争哥”，或者微信扫描下面二维码关注\n### 关注微信公众号，回复”PDF“获取独家算法资料。\n### 前Google工程师，10万人跟着学的《数据结构和算法之美》《设计模式之美》专栏作者\n![t2](https:\u002F\u002Fgithub.com\u002Fwangzheng0822\u002Fmarkdownphotos\u002Fblob\u002Fmaster\u002Fpics\u002Fqrcode_for_gh_9b0e7afdff20_258.jpg)\n\n## 数组\n* 实现一个支持动态扩容的数组\n* 实现一个大小固定的有序数组，支持动态增删改操作\n* 实现两个有序数组合并为一个有序数组\n\n## 链表\n* 实现单链表、循环链表、双向链表，支持增删操作\n* 实现单链表反转\n* 实现两个有序的链表合并为一个有序链表\n* 实现求链表的中间结点\n\n## 栈\n* 用数组实现一个顺序栈\n* 用链表实现一个链式栈\n* 编程模拟实现一个浏览器的前进、后退功能\n\n## 队列\n* 用数组实现一个顺序队列\n* 用链表实现一个链式队列\n* 实现一个循环队列\n\n## 递归\n* 编程实现斐波那契数列求值f(n)=f(n-1)+f(n-2)\n* 编程实现求阶乘n!\n* 编程实现一组数据集合的全排列\n\n## 排序\n* 实现归并排序、快速排序、插入排序、冒泡排序、选择排序\n* 编程实现O(n)时间复杂度内找到一组数据的第K大元素\n\n## 二分查找\n* 实现一个有序数组的二分查找算法\n* 实现模糊二分查找算法（比如大于等于给定值的第一个元素）\n\n## 散列表\n* 实现一个基于链表法解决冲突问题的散列表\n* 实现一个LRU缓存淘汰算法\n\n## 字符串\n* 实现一个字符集，只包含a～z这26个英文字母的Trie树\n* 实现朴素的字符串匹配算法\n\n## 二叉树\n* 实现一个二叉查找树，并且支持插入、删除、查找操作\n* 实现查找二叉查找树中某个节点的后继、前驱节点\n* 实现二叉树前、中、后序以及按层遍历\n\n## 堆\n* 实现一个小顶堆、大顶堆、优先级队列\n* 实现堆排序\n* 利用优先级队列合并K个有序数组\n* 求一组动态数据集合的最大Top K\n\n## 图\n* 实现有向图、无向图、有权图、无权图的邻接矩阵和邻接表表示方法\n* 实现图的深度优先搜索、广度优先搜索\n* 实现Dijkstra算法、A*算法\n* 实现拓扑排序的Kahn算法、DFS算法\n\n## 回溯\n* 利用回溯算法求解八皇后问题\n* 利用回溯算法求解0-1背包问题\n\n## 分治\n* 利用分治算法求一组数据的逆序对个数\n\n## 动态规划\n* 0-1背包问题\n* 最小路径和\n* 编程实现莱文斯坦最短编辑距离\n* 编程实现查找两个字符串的最长公共子序列\n* 编程实现一个数据序列的最长递增子序列\n","该项目提供了数据结构和算法必知必会的50个代码实现，使用Python语言编写。核心功能涵盖了从基础的数据结构（如数组、链表、栈、队列）到高级算法（如排序、二分查找、散列表、字符串处理、二叉树操作、堆及图论算法）的全面覆盖，还包括递归、回溯、分治与动态规划等编程技巧的应用实例。技术特点在于其实现简洁明了，易于理解，并且每个算法都附有详细的解释。非常适合计算机科学专业的学生、软件开发人员以及对算法感兴趣的自学者作为学习资源，在准备技术面试或提升编程能力时使用。",2,"2026-06-11 02:49:28","top_language"]