![](https://img-blog.csdnimg.cn/b54e722eb57945519f040e3c114b41d8.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Python数据结构与算法
文章平均质量分 97
原价99.9,限时39.9🔥火爆订阅中(五日后恢复原价)。数据结构与算法是计算机程序设计的必备技术基础,专栏采用Python语言作为数据结构和算法的描述语言。提高读者数据抽象及算法设计能力。
优惠券已抵扣
余额抵扣
还需支付
¥39.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
盼小辉丶
记录学习历程,分享学习心得,关注深度学习,欢迎交流学习.
展开
-
Python数据结构与算法(1.1)——数据结构与算法导论
计算机科学的研究对象是问题、解决问题的过程,以及通过该过程得到的解决方案。本节首先介绍数据结构与算法的基本概念,并介绍数据结构与算法的研究必须符合的框架,尤其是学习这些内容的原因以及为什么说理解它们有助于更好地解决问题。原创 2021-11-12 10:27:35 · 38402 阅读 · 155 评论 -
Python数据结构与算法(1.2)——Python基础之变量与内置数据类型
Python 是简洁、易学、面向对象的编程语言。它不仅拥有强大的原生数据类型,也提供了简单易用的控制语句。本节的主要目标是介绍 Python 基础知识,并为接下来的数据结构和算法学习奠定基础,本文并未完整、详尽的 Python 教程,但会介绍学习数据结构和算法所需的 Python 基础知识及基本思想,并给出相应的实战示例及解释。原创 2021-11-19 07:37:58 · 52065 阅读 · 227 评论 -
Python数据结构与算法(1.3)——Python基础之输入、输出与高阶赋值
Python 是简洁、易学、面向对象的编程语言。本节的主要目标是介绍 Python 程序如何利用输入、输出语句与用户进行交互,以及高阶赋值语句,为接下来的学习奠定基础。原创 2021-11-22 09:27:25 · 36467 阅读 · 292 评论 -
Python数据结构与算法(1.4)——Python基础之控制结构
Python 是简洁、易学、面向对象的编程语言。我们已经介绍了 Python 中的内置原生数据类型,并且也了解了程序如何利用输入、输出语句与用户进行交互。本节的主要目标是介绍 Python 的控制语句,主要包括条件和循环语句,为接下来的算法学习奠定基础。原创 2021-11-24 13:25:31 · 29019 阅读 · 202 评论 -
Python数据结构与算法(1.5)——Python基础之函数与异常
Python 是简洁、易学、面向对象的编程语言。我们已经介绍了 Python 中的内置原生数据类型,并且也了解了程序如何利用输入、输出语句与用户进行交互,以及 Python 中的控制语句。本节的主要目标是介绍 Python 中的函数和异常等有用的编程方法,接下来的算法学习奠定基础。原创 2021-11-29 09:21:13 · 50975 阅读 · 204 评论 -
Python数据结构与算法(1.6)——Python基础之类与模块化
Python 是简洁、易学、面向对象的编程语言。我们已经介绍了 Python 中的内置原生数据类型,并且也了解了程序如何利用输入、输出语句与用户进行交互,以及 Python 中的控制语句和函数式编程。本节的主要目标是介绍 Python 中的面向对象编程范式以及模块化思想,接下来的算法学习奠定基础。原创 2021-12-06 09:42:22 · 34911 阅读 · 178 评论 -
Python数据结构与算法(1.7)——算法分析
我们已经知道算法是具有有限步骤的过程,其最终的目的是为了解决问题,而根据我们的经验,同一个问题的解决方法通常并非唯一。这就产生一个有趣的问题:如何对比用于解决同一问题的不同算法?为了以合理的方式提高程序效率,我们应该知道如何准确评估一个算法的性能。本节学习首先介绍算法分析的重要性,并讲解了分析算法的时间复杂度和空间复杂度分析方法,最后介绍了Python列表和字典常见操作的时间复杂度。原创 2021-12-26 18:29:28 · 28254 阅读 · 112 评论 -
Python数据结构与算法(2.1)——线性表的基本概念
线性表是应用最为广泛的一种数据结构,如其名所示,是一种典型的线性结构。本节主要介绍线性表的有关概念和基本操作,为之后线性表的实现奠定基础。原创 2022-01-03 16:05:29 · 18194 阅读 · 39 评论 -
Python数据结构与算法(2.2)——顺序表
线性表的顺序存储是把线性表的数据元素按逻辑次序依次存放在一组连续的存储单元中,即逻辑结构上相邻的两个数据元素存储在计算机内的物理存储位置也是相邻的,这种存储方法为整个线性表分配一整个内存块保存线性表的元素,借助数据元素在计算机内的物理位置表示线性表中数据元素之间的逻辑关系。采用顺序存储结构表示的线性表简称顺序表 (Sequential List)。本节将介绍顺序表的特点以及各种基本操作的实现。原创 2022-01-07 09:53:17 · 25542 阅读 · 85 评论 -
Python数据结构与算法(2.3)——链表
在顺序存储方式中,根据数据元素的序号就可随机存取表中任何一个元素,但同时在插入和删除操作需要移动大量的元素,造成算法效率较低。解决此缺陷的一个办法是:对线性表采用链式存储方式。在链表存储方式中,在逻辑上相邻的数据元素在存储空间中不一定相邻,数据元素的逻辑次序是通过链表中指针链接实现的。采用链式存储结构表示的线性表简称链表。本节将介绍链表的特点以及各种基本操作的实现。原创 2022-01-11 09:26:55 · 20306 阅读 · 57 评论 -
Python数据结构与算法(2.4)——双向链表
双向链表与单链表相似,属于顺序表的链式存储结构,单链表和双向链表的唯一区别在于双向链表是用两个指针表示结点间的逻辑关系,增加了一个指向其直接前驱的指针域,这样形成的链表有两条不同方向的链——前驱链和后继链,因此称为双向链表,或称为双链表。本节中我们将重点讨论双向链表及其相关操作的实现。原创 2022-01-17 15:49:50 · 18546 阅读 · 28 评论 -
Python数据结构与算法(2.5)——循环链表
循环链表 (Circular Linked List) 是链式存储结构的另一种形式,它将链表中最后一个结点的指针指向链表的头结点,使整个链表头尾相接形成一个环形,使链表的操作更加方便灵活。我们已经介绍了单链表和双向链表,本节中我们将基于单链表和双向链表实现循环链表与循环双链表以及它们的相关操作。原创 2022-01-24 11:47:43 · 17060 阅读 · 29 评论 -
Python数据结构与算法(2.6)——块状链表
块状链表 (Unrolled Linked Lists) 是单链表的变体,其降低了访问单链表中指定位置元素的时间复杂度,块状链表中的每个块结点(简称块)中存储了多个数据元素结点,每个块中的结点使用一个循环链表进行连接。本节讲介绍块状链表的基本概念并实现其基本操作。原创 2022-01-31 11:22:01 · 18680 阅读 · 32 评论 -
Python数据结构与算法(2.7)——跳表
在诸如单链表、双线链表等普通链表中,查找、插入和删除操作由于必须从头结点遍历链表才能找到相关链表,因此时间复杂度均为 O(n)。跳表是带有附加指针的链表,使用这些附加指针可以跳过一些中间结点,用以快速完成查找、插入和删除等操作。本节将介绍跳表的相关概念及其具体实现。原创 2022-02-08 18:43:41 · 20919 阅读 · 37 评论 -
Python数据结构与算法(3.1)——栈
栈和队列是在程序设计中常见的数据类型,从数据结构的角度来讲,栈和队列也是线性表,是操作受限的线性表,它们的基本操作是线性表操作的子集,但从数据类型的角度来讲,它们与线性表又有着巨大的不同。本节将首先介绍栈的定义和其不同实现,并且给出栈的一些实际应用。原创 2022-03-07 12:01:08 · 18791 阅读 · 39 评论 -
Python数据结构与算法(3.2)——栈相关应用与习题
我们已经学习了栈的相关概念以及其实现,同时也了解了栈在实际问题中的广泛应用,本节的主要目的是通过栈的相关习题来进一步加深对栈的理解,同时能够利用栈降低一些复杂问题解决方案的时间复杂度。原创 2022-03-14 07:07:30 · 18633 阅读 · 30 评论 -
Python数据结构与算法(3.3)——队列
栈和队列是在程序设计中常见的数据类型,从数据结构的角度来讲,栈和队列也是线性表,是操作受限的线性表,它们的基本操作是线性表操作的子集,但从数据类型的角度来讲,它们与线性表又有着巨大的不同。本节将介绍队列的定义及其不同实现,并且给出队列的一些实际应用。原创 2022-03-21 08:21:23 · 18575 阅读 · 25 评论 -
Python数据结构与算法(3.4)——队列相关应用与习题
我们已经学习了队列的相关概念以及其实现,同时也了解了队列在实际问题中的广泛应用,本节的主要目的是通过队列的相关习题来进一步加深对队列的理解,同时能够利用队列降低一些复杂问题解决方案的时间复杂度。原创 2022-03-28 07:02:07 · 18329 阅读 · 16 评论 -
Python数据结构与算法(3.5)——双端队列
双端队列是另一个线性数据结构。虽然它也是一种受限线性表,但与栈和队列不同的是,双端队列的限制很少,它的基本操作也是线性表操作的子集,但从数据类型的角度来讲,它们与线性表又有着巨大的不同。本节将介绍双端队列的定义及其不同实现,并且给出双端队列的一些实际应用。原创 2022-03-31 07:27:19 · 18058 阅读 · 23 评论 -
Python数据结构与算法(4.1)——递归
递归函数是直接调用自己或通过一系列语句间接调用自己的函数。递归在程序设计有着举足轻重的作用,在很多情况下,借助递归可以优雅的解决问题。本节主要介绍递归的基本概念以及如何构建递归程序。原创 2022-04-06 07:08:19 · 41325 阅读 · 25 评论 -
Python数据结构与算法(4.2)——递归的可视化
递归函数是直接调用自己或通过一系列语句间接调用自己的函数。递归在程序设计有着举足轻重的作用,在很多情况下,借助递归可以优雅的解决问题。虽然使用递归可以快速的解决一些难题,但由于递归的抽象性,使递归难以掌握。为了更好的理解递归函数背后的思想,本节主要通过可视化方式来了解递归函数的执行步骤。原创 2022-04-15 08:47:09 · 17523 阅读 · 21 评论 -
Python数据结构与算法(附录)——块状链表的动态调整
块状链表的块的最大容量会随着链表长度的变化动态改变,因此,为了维持块状链表的稳定性,需要对块状链表进行动态调整,本文将就块状链表的动态调整进行详解分析.原创 2022-01-31 11:19:03 · 17099 阅读 · 4 评论