Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

我用Python写的一些算法

License

NotificationsYou must be signed in to change notification settings

algorithm-programming/algorithm

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

在阅读算法导论的时候。我用Python写的一些算法,这些算法大部分使用list来作为底层存储数据的结构。

#算法##排序算法:sort文件夹下面

  1. 冒泡排序
  2. 插入排序
  3. 归并排序
  4. 快速排序
  5. 随机快速排序
  6. 选择排序
  7. 堆排序
  8. 计数排序

##查找算法

  1. 二分查找算法
  2. 第k小数选择算法
  3. 随机第k小数选择算法
  4. 计算集合中两个元素的和和一个数相等

##动态规划

  1. 使用分治法的最大子数组(应该算成分治法)
  2. 使用自底向上方法实现的最大子数组
  3. 使用动态规划的两种方式实现的LCS(最大公共串)(下面的算法都会使用动态规划的两种方式来实现)
  4. 加权有向无环图中最短路径和最长路径
  5. 背包问题
  6. 最长回文子串(lps)

###幂乘:算法复杂度是O(lgn)##贪心算法

  1. 活动选择问题
  2. 带权活动选择问题(其实就是一个调度问题)
  3. 分数背包问题

###斐波那契树

  1. 使用循环实现的算法o(n)

##数论算法

  1. 欧几里得算法求解最大公约数

##字符串匹配算法

  1. 朴素算法
  2. Rabin-Karp算法
  3. KMP算法

#数据结构

##树

  1. 二叉树
  2. 使用左孩子右兄弟实现的多叉树
  3. 二叉搜索树
  4. 红黑树
  5. 动态顺序统计树
  6. 区间树
  7. AVL树(未实现,类似于红黑树)
  8. Tries(用于处理字符串)
  9. B树(B树的中序遍历是由我自己实现的,没有任何资料来源)

##列表类

  1. 双向链表
  2. 使用三个数组实现的链表
  3. 跳跃表 (性能类似于红黑树,但是编程更加简单)

##堆类和队列

  1. 最大堆
  2. 最大优先队列
  3. 使用列表实现的队列
  4. 使用最大堆实现的FIFO队列

##哈希表

  1. 使用链表解决冲突的哈希表
  2. 使用二次哈希解决冲突的哈希表

##矩阵

  1. 实现strassen矩阵乘法的矩阵

##图

  1. 深度遍历,广度遍历和拓扑排序
  2. 带权有向无环图的最大路径(动态规划自下而上)

##类库:为了保证被其他算法使用的数据结构一定是没有bug的,我用Python的内置类型实现实现了一些常用的数据结构(lib)

  1. Stack
  2. Queue
  3. Set

未来计划

  • 在学习redis源码的过程中修改各个数据结构的实现,目的是使用更加精细的规则去提高数据结构的性能
  • 添加更多注释并且格式化代码,注释中注重于设计的思考
  • 添加算法导论中其他高级的数据结构
  • 计划完成一些在线的题库,比如leecode和projecteuler

About

我用Python写的一些算法

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python97.8%
  • C2.2%

[8]ページ先頭

©2009-2025 Movatter.jp