美文网首页
python数据结构教程 Day1

python数据结构教程 Day1

作者: XaviSong | 来源:发表于2020-07-16 21:04 被阅读0次

    一、为什么这次选择数据结构?

    上次更完了python语言的基础部分,那么接下来需要给小白女票恶补的是什么呢?除了学习编程语言外,本科期间的专业课最能体现出计算机特色的,无非就是四门:数据结构、计算机网络、操作系统、计算机组成原理。其实看我列举的这四门的顺序就知道了,结合室友找工作回来的经验,重要程度基本就是这么排的。计组,不搞硬件基本是不会问得特别深。计网,她们也学,虽然可能重点不同但也算有了解,OS偏底层更多,而且本人很久也没看过了,教别人信心也不是很强。

    数据结构,先加粗一下,表示尊敬。

    属于内功,有点博大精深的感觉,应该是计科专业必须非常熟悉的,关系到功能拿来实现的质量和效率,面试题是必过的关。考虑到她这方面的空白,所以虽然我的水平有限,也还是尽力学习转述。还是那句话,如果更多的人未来看到了这个系列,欢迎批评指正,因为本人实在就是一个水平一般,爱动笔、爱分享的普通男孩。

    二、为什么用python:

    1、python简单、易用、应用层面广,个人觉得能更清晰地展示算法的关键步骤。

    2、上次刚更完python基础嘛,也算是承上。

    3、C/C++描述算法更经典,但是本人C++不是很熟。

    三、参考:

    本人本科期间的数据结构是采用经典的C语言教学,自然拿来就用就不符合我们的要求了。这里主要是根据B站上北京大学陈斌老师的课程《数据结构与算法》python版,来总结添加内容。还是同样的,本人会尽量使用白话和最简单的方式,尽量用文字、代码、执行结果,全面地展示数据结构的基础内容。

    四、大纲:

    不一定完全按照此内容,但是基本框架符合

    1. 线性结构:无序表、有序表、栈、队列、双端队列
    2. 递归:递归定义、最优化、分治、贪心、动态规划
    3. 查找:顺序、二分
    4. 排序:冒泡、选择、插入、希尔、归并、快排
    5. 散列:散列函数、冲突解决
    6. 树:实现树、三种遍历、实现优先队列、实现二叉堆、BST、AVL
    7. 图:基本概念、BFS、DFS、拓扑排序、强连通分支、单源最短路径、最小生成树

    五、start!

    相关文章

      网友评论

          本文标题:python数据结构教程 Day1

          本文链接:https://www.haomeiwen.com/subject/yfgmhktx.html