上一章我们看Python内置的模块可以测试代码的时间,有的代码执行时间短有的执行时间长,就是说效率不一样。

如果上面不明显的话,大家看下面两个方法。append() 和 insert(0)

import timeit
def t6():li = []for i in range(10000):li.append(i)def t7():li = []for i in range(10000):li.insert(0, i)timer6 = timeit.Timer("t6()", "from __main__ import t6")
print("append", timer6.timeit(1000))timer7 = timeit.Timer("t7()", "from __main__ import t7")
print("insert(0)", timer7.timeit(1000))

执行结果。

append 1.1817268750736
insert(0) 25.375035200030037

我们看上面两个方法的概念,是append是向列表后面添加元素,insert(0) 是向列表前面添加。可以看出从前面添加要不从后面添加花费的时间更多。

为什么会有这样的差别呢?

我们看一下Python中列表和字典不同,假设我们要从数据中找到小明和数据我们需要的时间怎么样的操作。

[{name: '小a},{name: '小b'},{name: '小c'}, {name: '小明'} ... n] , 我们需要遍历这个列表然后才能知道那一条数据是小明。

{ '小a': {...}, '小b': {...}, '小c': {...},'小明': {...} ..... },如果在字典里面去查找我们就可以直接找到小明的数据。

数据结构的概念是:

数据是一个抽象的概念,将其进行分类后得到程序设计语言中的基本类型。如 int string float ...  数据元素之间不是独立的,存在特定的关系,这些关系便是结构。数据结构指数据对象中数据元素之间的关系。

Python数据结构与算法(三)--数据结构的概念相关推荐

  1. 数据结构与算法(三) 排序算法(代码示例)

    数据结构与算法三 排序算法 1. 选择排序 2. 插入排序 3. 冒泡排序 4. 归并排序 5. 快速排序 6. 希尔排序 7. 堆排序 总结 1. 选择排序 选择排序的基本原理: 对于未排序的一组记 ...

  2. 数据结构与算法入门---数据结构类型

    数据结构与算法入门---数据结构类型 数据的逻辑结构 数据的逻辑结构指数据元素之间的逻辑哦关系(和实现无关) 分类一:线性结构和非线性结构 线性结构:有且只有一个开始结点和一个终端节点,并且所有节点都 ...

  3. 【数据结构与算法】数据结构+算法=程序

    [数据结构与算法]数据结构+算法=程序 数据结构 数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成.记为:Data_Structure=(D,R)其中D是数据元 ...

  4. python写数据结构书_有哪些用 Python 语言讲算法和数据结构的书?

    python数据结构基础工具书籍下载-持续更新​www.jianshu.com 以上网址有大量python数据结构的书籍下载,内容比较长,我这边拷贝了一部分. 本书示例丰富,图文并茂,以让人容易理解的 ...

  5. python算法书籍-有哪些用 Python 语言讲算法和数据结构的书?

    1.Python数据结构篇 数据结构篇主要是阅读[Problem Solving with Python](Welcome to Problem Solving with Algorithms and ...

  6. python数据结构与算法13_python3数据结构与算法

    python内置的数据结构包括:列表(list).集合(set).字典(dictionary),一般情况下我们可以直接使用这些数据结构,但通常我们还需要考虑比如搜索.排序.排列以及赛选等一些常见的问题 ...

  7. Java数据结构与算法——树(基本概念,很重要)

    声明:码字不易,转载请注明出处,欢迎文章下方讨论交流. 有网友私信我,期待我的下一篇数据结构.非常荣幸文章被认可,也非常感谢你们的监督. 前言:Java数据结构与算法专题会不定时更新,欢迎各位读者监督 ...

  8. python数据结构与算法13_python 数据结构与算法 (13)

    python 数据结构与算法 (13) 选择排序 (Selection sort) 是? 种简单直观的排序算法. 它的? 作原理如 下.? 先在未排序序列中找到最?(?)元素, 存放到排序序列的起始位 ...

  9. 数据结构和算法基本介绍和概念

    数据结构和算法介绍 什么是数据结构和算法 广义上,数据结构就是一组数据的存储结构,算法就是操作数据结构的一种方法. 程序 = 数据结构 + 算法 结构是数据元素之间不是独立的,存在特定的关系,数据结构 ...

最新文章

  1. leetcode--删除排序链表中的重复元素--python
  2. 一文教会你三维网格物体识别
  3. 关于大型网站技术演进的思考(九)--网站静态化处理--总述(1)
  4. Python遍历列表时删除元素
  5. led显示屏背景墙设计_全彩LED显示屏比例设计因素都有哪些?
  6. 【机器学习基础】关于异常检测的分享!
  7. | 一文读懂迁移学习(附学习工具包)
  8. 【BZOJ】1798: [Ahoi2009]Seq 维护序列seq(线段树)
  9. 基于C语言Ncurse库和链表的简单贪吃蛇小游戏
  10. 使用Specs2和客户端API 2.0进行富有表现力的JAX-RS集成测试
  11. 修改git历史提交的commit信息
  12. 可缩放的思维导图_成就销售王者的23大流程,配思维导图,可直接学习收藏
  13. android初学之sharedpreferences存储
  14. linux下载python的地址_Linux下Python获取IP地址的代码
  15. 链表排序 Sort List
  16. Python之计算机算法基础总结(借鉴、整理)、排序算法、查找算法
  17. 计算机磁盘扩展,win7如何对硬盘进行扩展分区
  18. 都 要 悠 着 点 呀~~
  19. C语言编周期100ms的方波信号,单片机系统设计 - 2020学年春(邸志刚)-中国大学mooc-题库零氪...
  20. VS Code中常用插件

热门文章

  1. python 重定向stdout_Python 犄角旮旯--重定向 stdout
  2. html5怎么删除样式,css怎么删除一个样式
  3. keil lic_LIC的完整形式是什么?
  4. n的阶乘程序python_Python程序对N阶乘的尾随零进行计数
  5. java容器详解_详解Java 容器(第①篇)——概览
  6. 软件工程编码阶段_软件工程的编码阶段
  7. java程序员个人能力介绍_Java操作员能力问题
  8. Java StreamTokenizer whitespaceChars()方法及示例
  9. c#如何嵌套第三方程序_C#程序演示嵌套条件运算符的示例
  10. 超级详细的Spring Boot 注解总结