Python数据结构
the best messi
大学生初级程序员记录和分享自己的学习历程,希望和大家一起进步!
展开
-
sort函数他不香嘛?为什么还要学各种各样的排序算法!
说起排序啊,我心里想到的第一个例子就是给定一个三个数a,b,c按照从小到大的顺序排序输出,这应该算是我们接触编程遇到的最简单的排序问题了叭。不知道大家当时是怎么解决这个问题的?别告诉我你直接sort()哈,其实我当初遇到这个问题的时候是想了一会儿的,包括当时遇到比较三个数大小的问题时,在...原创 2020-04-02 18:29:24 · 3059 阅读 · 10 评论 -
一文带你彻底搞懂二叉树(Python实现)——真香
终于到了数据结构中的关键部分了——二叉树。说起二叉树啊,简直是我当初学习C语言数据结构课程的噩梦,为什么这么说呢?记得老师当初在讲啥子先序遍历、中序遍历、后序遍历的时候,我脑壳里简直是一团浆糊,碰到一些复杂的二叉树根本就整不清楚到底要咋个遍历,并且遍历的代码到现在我还不会。害,以至于我在期末考试之前猛补数据结构的知识点,本以为自己能够得个高分(题目都会做),结果差强人意。现在我重新捡起这个,用一种全新的思维方式来解释二叉树、实现二叉树,猛地发现Python实现是真香。原创 2020-03-27 17:10:10 · 5346 阅读 · 9 评论 -
天生我才必有用——浅析Python列表与链表
前言之前写了一篇《没有指针,Python如何实现链表、二叉树这些数据结构》然后有大佬觉得我那里面讲的是列表,不是链表。当时我也很疑惑,因为我也不太确定列表和链表到底有什么区别,说实话,列表确实比较好用,因为是Python已经封装好了的,方法种类多样,更加的实用。但是这难道就意味着链表这一数据结构没有丝毫的用处嘛?当然不是,只是可能你还没有到非用他不可的地步罢了。链表详解链表的底层实现机制翻...原创 2020-03-26 14:40:15 · 1549 阅读 · 2 评论 -
3分钟带你搞懂栈和队列(Python实现)——不懂你锤我
前面的链表部分已经啰里啰嗦的整完了,看到了很多大佬的留言说我整链表是多此一举,并且链表的实用性不大,还有的人说,难道Python自带的列表他不香嘛,非要去整什么链表,。我想说的是,我现在学的是数据结构,数据结构难道不应该学链表嘛?不应该用Python语言语法来实现试试嘛?不过我今天就要用真香的列表来实现栈和队列这两种数据结构!原创 2020-03-24 16:46:52 · 816 阅读 · 2 评论 -
换汤不换药——Python实现双向链表与单向循环链表
前面我们讲到了Python中如何在没有指针的情况下来实现一个单链表这种数据结构,面向对象程序很高明啊,用一个类实现结点,有了结点就可以串联起来形成链表。既然大家都是链表,那么双向链表和单向循环链表跟单向链表不就是爸爸和儿子的关系嘛!那么我们就可以使用继承来实现双向链表和单向循环链表了,使得其中的很多代码都可以重用,提高了代码编写的效率。...原创 2020-03-23 11:25:46 · 372 阅读 · 0 评论 -
没有指针,Python如何实现链表、二叉树这些数据结构?
兜兜绕绕两三天终于到了重要的地方了,当初想到要学数据结构的时候,以及后面了解到数据结构的语言无关性之后,心里不免还是有个疑问:Python也没有指针啊,怎么样像C语言那样通过指针来实现更高级的数据结构呢?众所周知,C语言实现的链表是由一个一个的结点构成,每个结点分为数据域和指针域,指针域中存储了其后继结点的**地址**,通过地址来访问下一个结点,然后一步一步的串联起来形成了一个单链表。但是Python没有指针啊,难不成有什么更高级的玩意儿来替代指针这个东西?带着这个大大的问号,我开始了链表的学习。原创 2020-03-21 09:40:19 · 9860 阅读 · 41 评论 -
Python中的列表、元组到底是个啥?
数据结构入门后第一个接触到的应该就是顺序表了,顺序表应该还是比较好实现的,将元素顺序地存放在一块连续的存储区里,元素间的顺序关系由它们的存储顺序自然表示。顺序表的使用好处在于物理存储上是一连串相邻的地址,当你的第一个元素唯一确定存储地址之后,后面的元素就可以顺着找到且...原创 2020-03-20 17:09:24 · 617 阅读 · 0 评论 -
Python封装了很好用的结构和方法,为啥还要学数据结构?
大家前面学过Python基础知识的都知道,Python为我们封装了列表、字典等高级数据类型,并且他们都带有一系列增、删、改、除的方法,让我们能够很方便的处理一些问题。以目前我们这些人的技术水平可能觉得这些东西就够了,照样能够快速的解决很多的问题。可是随着知识的深...原创 2020-03-19 09:12:12 · 8117 阅读 · 14 评论 -
那个让你头大的数据结构,用Python学会变简单吗?
学完了基本的语言语法之后,接下来就应该学习数据结构这个让人脑壳大的的东西了,如果是计算机专业的同学一般都是在大二上学期学习数据结构这门课程,且肯定是学习的用C语言或者C++来实现的版本。用C语言实现的数据结构中一个非常重要的工具就是指针,但是大家在学C的时候肯定看到指针就头痛,我也一样,所以我的数据结构算是白学了,会做题就是不会敲代码。当我在学Python数据结构之前就在想,Python当中...原创 2020-03-17 21:33:57 · 1494 阅读 · 6 评论