Skip to content

Commit 2897bb7

Browse files
committed
add readme
0 parents  commit 2897bb7

File tree

1 file changed

+98
-0
lines changed

1 file changed

+98
-0
lines changed

README.md

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
# Python 算法与数据结构视频教程
2+
3+
4+
## 课程简介
5+
数据结构和算法是每个程序员需要掌握的基础技能之一,也是面试中跨不过的槛。目前关于 Python 算法和数据结构的中文资料比较欠缺,
6+
笔者尝试录制视频教程帮助 Python 初学者掌握常用算法和数据结构,提升开发技能。
7+
本教程是付费教程,因为笔者录制的过程中除了购买软件、手写板等硬件之外,业余需要花费很多时间和精力来录制视频,希望大家体谅。
8+
9+
## 课程内容
10+
包括我们在业务开发和面试中常用的算法和数据结构,希望可以帮助新人快速上手,很多老手写业务代码写多了很多基础知识忘记了,
11+
也可以作为回顾。
12+
对于每个算法和用到的数据结构我们需要知道:
13+
14+
- 原理
15+
- Python 实现方式
16+
- 时间、空间复杂度
17+
- 使用场景,什么时候用
18+
19+
## 目录结构
20+
这里讲解的章节我参考了下边教材中列举的一些书籍,并且自己设计了大纲。
21+
视频课程的目录结构:
22+
23+
- 课程简介,笨方法学算法
24+
- 抽象数据类型 ADT,面向对象编程
25+
- 数组和链表
26+
- 队列和栈
27+
- 算法分析,时间复杂度 大O 表示法
28+
- 高级链表。双链表
29+
- 哈希表,散列冲突
30+
- 字典和集合
31+
- 递归
32+
- 线性查找和二分查找
33+
- 基本排序算法
34+
- 高级排序算法: 归并排序、堆排序、快排
35+
- 树,二叉树
36+
- 图,dfs 和 bfs
37+
- python 内置常用数据结构和算法。list, dict, set, collections 模块,heapq 模块
38+
39+
## 编程语言
40+
我们这里使用最近很火的Python。Python 入门简单而且是个多面手,在爬虫、web 后端、运维、数据分析、AI 方面领域都有 Python 的身影。
41+
知乎、豆瓣、头条、饿了么、搜狐等公司都有广泛使用 Python。笔者日常工作使用也是 Python 居多,有一定实践经验,
42+
在知乎上维护了一个专栏[《Python 学习之路》](https://zhuanlan.zhihu.com/c_85234576)
43+
44+
并且由于 Python 抽象程度比较高, 我们能用更少的代码来实现功能,同时不用像 C/C++ 那样担心内存分配、指针操作等问题,
45+
把主要心思放在算法逻辑本身上,Python 也号称伪代码语言。
46+
47+
## 受众
48+
想要学习 Python 算法和数据结构的初、中级同学。需要掌握 Python
49+
的基本语法和面向对象编程的一些概念,我们这里只使用最基本的 Python 语法,不会再去介绍用到的 Python 语法糖。
50+
51+
## 教材
52+
这里我曾参考过三本书:
53+
54+
[《算法图解》](https://book.douban.com/subject/26979890/): 图解的形式很适合新手
55+
56+
[《Data Structures and Algorithms in Python》]( https://book.douban.com/subject/10607365/): 适合对 Python
57+
和算法比较熟悉的同学,或者是有其他语言编程经验的同学
58+
59+
[《算法导论》]( https://book.douban.com/subject/20432061/): 喜欢数学证明和板砖书的同学可以参考,有很多高级主题
60+
61+
62+
## 讲课形式
63+
64+
绘图演示+手写板+现场编码
65+
66+
我将使用绘图软件+手写板进行类似于纸笔形式的讲解,边讲边开个终端分成两个窗口,一个用 vim
67+
编写代码,另一个窗口用来运行代码,所有代码我将会现场编写(还是很有挑战的),不会像某些大学教师一样只喜欢念 ppt,
68+
你可以参考我在知乎发的专栏文章看下:
69+
70+
[那些年,我们一起跪过的算法题[视频]](https://zhuanlan.zhihu.com/p/35175401)
71+
72+
[抱歉,我是开发,你居然让我写单测[视频]](https://zhuanlan.zhihu.com/p/35352024)
73+
74+
75+
## 资料
76+
77+
- 视频。包含所有讲解视频
78+
- 代码示例。所有代码我会放到 github 上
79+
- markdown 讲义。
80+
81+
## 如何学习
82+
笔者讲课录制视频的过程也是自己再整理和学习的过程,录制视频之前需要参考很多资料
83+
84+
- 理解所讲的每个数据结构和算法的
85+
- 原理
86+
- Python 实现方式
87+
- 时间、空间复杂度
88+
- 使用场景,什么时候用
89+
- 自己尝试实现,如果抛开视频自己写起来有困难可以多看几次视频,一定要自己手动实现
90+
91+
## 开发工具
92+
推荐使用以下工具进行开发,如果使用编辑器你需要安装对应的插件:
93+
94+
- Pycharm
95+
- Sublime
96+
- Atom
97+
- Vscode
98+
- Vim

0 commit comments

Comments
 (0)