数据结构--知识点2--数据结构概述

1、引入

算法: 一种思想,一种解决问题的思路,关注于解决问题的方法和步骤

数据结构:用什么方式将数据存储起来,不同的组织方式,到时候操作数据时的时间复杂度不同

比如: 存储一个班级学生的姓名、年龄、家乡

  1. 列表中每个学生的信息用字典存储,需要取出Tom的信息时,时间复杂度为O(n)
[
{
'name':'Tom',
    'age':23,
    'hometown':'beijing'
},
]
  1. 字典中嵌套字典,用学生姓名作键,年龄和家乡作值,需要取出Tom的信息时,时间复杂度为O(1)
{
'Tom':{
       'age':23,
       'hometown':'beijing'
   },
}

2、概念

  • 程序设计语言中基本类型:整型、浮点型、字符型
  • 数据结构是对基本数据类型的一次封装
  • python中的列表、字典、元组,是python提供的已经封装好的数据结构,即为python的内置数据结构。

3、算法与数据结构的区别

  • 数据结构是静态的描述数据元素之间的关系
  • 高校的程序需要在数据结构的基础上设计和选择算法
  • 程序=数据结构+算法

算法是为了解决实际问题而设计的,数据结构是算法需要处理的问题载体

抽象数据类型: 把数据类型和数据类型支持的运算捆在一起进行封装。
比如:学生信息放入列表中,对应的列表操作和学生信息捆绑在一起的操作可以有学生退学(pop)、添加学生信息(adds)、给学生排序(sort)、修改学生信息(modify)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值