惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

H
Help Net Security
腾讯CDC
爱范儿
爱范儿
Google DeepMind News
Google DeepMind News
V
V2EX
Blog — PlanetScale
Blog — PlanetScale
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI
量子位
F
Fortinet All Blogs
G
Google Developers Blog
T
The Blog of Author Tim Ferriss
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Hugging Face - Blog
Hugging Face - Blog
Last Week in AI
Last Week in AI
T
Tailwind CSS Blog
J
Java Code Geeks
S
SegmentFault 最新的问题
D
Docker
博客园 - 司徒正美
The GitHub Blog
The GitHub Blog
Jina AI
Jina AI
M
MIT News - Artificial intelligence
博客园 - 【当耐特】

Posts on WKLKEN THINKING

apisix 中的 lrucache apisix 中的服务发现机制 apisix 中的负载均衡 apisix etcd机制 聊聊框架 关于 k8s 的 zero downtime deployment 一些建议 apisix 遇到的一些问题 关于在除夕前一天换了一个洗衣机的故事 Django DRF 性能优化 DRF 的一些实践 Part1: Serializer DRF继承关系图 Better Code: 关于接口的灵活性 新的仓库: wklken/naming 缓存使用的一些经验 Better Code: 抽象: 可扩展性与可维护性的抉择 Better Code: 异常时, 该提示用户哪些信息? Better Code: 更好的异常日志打印 Go: some libs Go: go-redis/cache升级的坑 Go: logrus性能提升 Go: gin validation 远程办公的一点总结 Go: 开发过程中的一些bug 项目管理实践: 风险驱动开发 Go: 一种error wrap调用链处理方式 漫谈技术选型 Go: 基于 apitest 做handler层单元测试 Go: go-sql-driver interpolateparams参数优化 [分享]深度工作 你需要更多的思考时间
数据结构&算法实践-Python——序章
2012-05-10 · via Posts on WKLKEN THINKING

很久很久之前的blog,没写完的系列,当时想写完来着,有点用,先转过来

数据结构&算法实践——Python 

————————————–目录 START————————————————

第一部分列表(目录主要来自于维基百科)

模块一:经典排序实现

交换排序法

      冒泡排序 |鸡尾酒排序 |奇偶排序 |梳排序 |地精排序(gnome_sort) |Bogo排序|快速排序

选择排序法

      选择排序 | 堆排序

插入排序法

      插入排序 | 希尔排序 | 二叉查找树排序 | Library sort | Patience sorting

归并排序法

      归并排序 | Strand sort

非比较排序法

      基数排序 | 桶排序 | 计数排序 | 鸽巢排序 | Burstsort | Bead sort

其他

      拓扑排序 | 排序网络 | Bitonic sorter | Batcher odd-even mergesort | Pancake sorting

低效排序法

      Bogosort | Stooge sort

模块二:经典查找

模块三:数据结构(后续补充完整,树和图是大头,包含很多分类和经典算法)

线性表   队列   栈   堆   树  图

 ————————————–目录 END————————————————

写在前面

毕业迄今也接近一年了,发现很多学校的东西似乎生疏了.

最近重新拿起数据结构,算法导论,离散数学,决定用代码敲些东西,权当复习

大部分的地方我只会给出例子和具体的代码实现,顺带给出一些百科的链接,概念和理论性的东西网上都有,不赘述了    之所以选择用python来写,主要是python的可读性非常好,即使不写注释,也能很轻松读懂.

我把这个过程大概切成三个部分:

1.经典数据结构和算法的实现

实现基本的经典算法,包括经典排序,经典查找,索引等,基本实现及改进

实现基本的数据结构,包括线性表,队列,栈,堆,树,图等,包含扩展

使用实现类似Java的数据结构,至始至终都认为java的api最为优美,使用Python实现之,包括Map,List,Set等,提供相同的API,同时希望会循序渐进,先用简单直观的方法实现,给出优化,涉及的知识主要是python面向对象,继承,重写内置方法,封装,(要对Python和java数据结构实现的底层源码有了解,需要看源代码)

2.笔试题面试题数据结构和算法实现

笔试&面试题的python处理

使用Python搞定笔试题&面试题中出现的算法和数据结构题目

包含大规模数据处理的详细例子

3.challenge

挑战一些大个的东西,深入实现一些较为复杂的算法

不罗嗦,先列下目录,已经写完一部分了,逐步发出来,更新目录(挪到前头去了)       先列这些,逐渐补充.

每天上完班回来,啃这堆砖头,然后敲出来,累却充实.

敲代码,调试代码其实是一件十分快乐的事情

My daytime job is SDET,平时敲自己喜欢的代码的时间并不会太多,业余时间有限

但做事贵善始善终,会坚持搞完的哈!      The End!

wklken@yeah.net

2012-05-10