什么是数据结构?

数据结构是指:相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。

举个列子来理解这个数据结构:

数据可以比作是书本, 数据结构相当于书架,书存放在书架上,要拿书,我们就得到书架上面去取。为了更快的拿到想要的书,可以把书按照某个方式来排列。比如将书架分成N层,(卡通书在第一层,文学书在第二层......)不同种类的书放在书架的不同层里。

这就是对数据结构通俗的一种理解。

Python的数据结构分类

Python中的数据结构可以统称为容器(container,即存放数据的容器),它有三种类型:序列(列表和元组),集合(Set)和映射(如字典):

列表List 例如: list1 = ['p', 'y', 't', 'h', 'o', 'n']

元组Tuple 例如:  tuple1 = ('p', 'y', 't', 'h', 'o', 'n')

集合Set 例如: set1={'p', 'y', 't', 'h', 'o', 'n'}

字典Dict 例如:  dict1 ={1:'p', 2:'y', 3:'t', 4:'h', 5:'o', 6:'n'}

这些数据结构有什么区别和作用呢?我们接下来的文章中结合一些实用的数据结构操作的方法,逐一介绍它们。想要提前了解更多学习内容,就前往码芽网吧:http://www.mayacoder.com/lesson/index

Python新手学习基础之数据结构-对数据结构的认知的更多相关文章

  1. Python新手学习基础之初识python——与众不同2

    看完了Python的缩进,现在来看看Python的标识符.引号和注释. 标识符 关于Python的标识符,其实不是与众不同,只是有一定的规则. 标识符是编程时使用的名字.在Python中,标识符有几点 ...

  2. Python新手学习基础之数据结构-序列1

    序列概念 序列,顾名思义就是有顺序的列,在Python里序列类型的数据结构包括字符串,列表和元组.既然都是序列类型,说明他们有很多共通点,他们的每一个元素都可以通过指定的偏移量方式(索引操作)来获得, ...

  3. Python新手学习基础之数据结构-序列2

    长度.最大值和最小值 序列类型的数据结构,常常会用到长度检查.最大最小值检查的函数. 他们的作用: len(序列):返回列表的长度(元素个数): max(序列) :返回列表中元素最大值: min(序列 ...

  4. Python新手学习基础之数据结构-列表1

    创建一个列表 讲完了序列,我们现在来讲讲Python中最常见的一种序列数据类型--列表. 列表创建的语法是: list_name = [item1, item2, item3, .......] 列表 ...

  5. Python新手学习基础之数据结构-列表2 添加

    insert 除了使用索引,我们还可以用列表的insert方法,在列表的指定位置添加新的值. insert的用法: list.insert(index, item) 例如: like_animals ...

  6. Python新手学习基础之函数-lambda函数

    lambda函数 在Python里除了用def定义函数外,还有一种匿名函数,也就是标题所示的lambda函数,它是指一类无需定义标识符(函数名)的函数或子程序. lambda函数的使用语法如下: la ...

  7. Python新手学习基础之函数-return语句与函数调用

    return语句 return语句的写法是: return 表达式 return语句用于退出函数,选择性地向调用方返回一个表达式.return在不带参数的情况下,默认返回None. None是一个特殊 ...

  8. Python新手学习基础之函数-概念与定义

    什么是函数? 函数是可以实现一些特定功能的方法或是程序,简单的理解下函数的概念,就是你编写了一些语句,为了方便使用,把这些语句组合在一起,给它起一个名字,即函数名.使用的时候只要调用这个名字,就可以实 ...

  9. Python新手学习基础之循环结构练习

    有几个元音字母? 有一个字符串"I learn Python from maya",我们想要查找出它里面的元音字母(aeiou)(其实是找出这几个小写字母),并统计出其元音字符的个 ...

随机推荐

  1. Introduction to Glide, Image Loader Library for Android, recommended by Google

    In the passed Google Developer Summit Thailand, Google introduced us an Image Loader Library for And ...

  2. 广度优先搜索BFS

    广度优先搜索可以形成一个广度优先搜索树 算法时间为O(V+E),两重循环 输入:图g,起点start(int) 需要的数据结构:队列Q.color数组(存放每个顶点的颜色) 算法过程: 1. 预处理: ...

  3. Jenkins 六: 构建中执行shell或者 windows的批处理程序

    Shell/ bat Jenkins 可以在构建中执行shell命令或者windows的batch 命令. 1. 选择一个项目,点击“配置”. 2. 找到“构建” –> “增加构建步骤”.选择 ...

  4. poj1023

    题目大意:有趣的数字系统 在一个k位的2的补码,,位的索引是从0到k-1位的,值是-2^(k-1),其他位置的i是2^i( (0 ≤ i < k-1) ),例如,3位的数字101是-2^2 + ...

  5. 关于 Head First SQL 中文版

    我想谈谈 我对于Head  First  SQL  中文版的一些看法 事实上关于我翻译的这个Head  First  SQL 中文版..我自觉得:的确翻译得非常烂.. 和翻译Head  First  ...

  6. SCI科技论文写作技巧-核心价值

    第一次写SCI论文写作技巧,本身不是大牛,也许没有资金格谈论这个. 这里仅仅是一些个人思考,不正确,好还是不好.而当另一种理论. 对于工程专业的学生,谁往往应用,书写SCI事情.当然,也不是没可能.全 ...

  7. Gradle Import Wizard--官方文档

    Last updated and checked to work with version 3.0.0 of the tools This tutorial will take you through ...

  8. Java 理论与实践: 用弱引用堵住内存泄漏---转载

    要让垃圾收集(GC)回收程序不再使用的对象,对象的逻辑 生命周期(应用程序使用它的时间)和对该对象拥有的引用的实际 生命周期必须是相同的.在大多数时候,好的软件工程技术保证这是自动实现的,不用我们对对 ...

  9. Drawable与Bitmap(转)

    Drawable                                                                                 以下这个是测试加载10 ...

  10. css中var函数

    引言: 在学习elementui的时候看到一个var.css, 其中写的全部都是以--开头的属性,上google查询不是css3新增的属性,于是决定一探究竟 :root { /* Transition ...