一、数据结构 读书笔记(一)基本概念与算法

成长让人痛并快乐着。


数据结构的抽象让很多同学望而却步,为了能与大家共同分享,尽量用一些生活中的例子来形象的说明某些定义或者某些逻辑等等。

先从数据结构的概念说起:什么是数据结构?这里先不做解释

数据:所有被计算机存储、处理的对象。如声音,图像,视频,一个计算器的处理对象就是整型,这里所说的存储和处理可以这样理解:比如用计算器计算1+1=2这个过程,当我们输入‘1’、'+'、‘1’的时候相当于概念中所讲的存储,当计算以后得到2的时候,就可以看作是在处理对象了。

 数据元素:它是数据的基本单位,也是运算的基本单位。(刚才1+1=2,1是数据元素)通常作为一个整个考虑和处理 。有时候数据元素是比较复杂的,当数据元素表示成一个人的时候,这个人有各种器官,这里引出数据项的概念,它是数据不可分割的最小单位,一个数据元素可由多个数据元素组成。


现在来看数据结构的概念:是数据元素之间存在的一种或多种特定关系的集合。

数据元素之间的关系也叫数据的逻辑结构,一共有四种结构,也可以看作有四种组织形式:

1.集合:结构中的数据元素除了同属于同一个集合外,数据元素之间没有其他关系。

2.线性结构:结构中的数据元素是一对一的关系,有一种先后的次序关系。如a,b,c    a是b的前驱,b是c的前驱,c是b的后继

3.树形结构:结构中的数据元素之间存在一对多的层次关系。

4.图形结构:结构中的数据元素之间存在多对多的关系。

数据结构的主要任务是把上述4种元素之间的关系表现成计算机可实现的物理结构,从而便于计算机处理。也就是数据的存储结构。主要有两种:

1.顺序存储结构:把数据元素存放在一组地址联系的存储单元里,其数据元素的逻辑关系和物理关系是一致的。

2.链式存储结构:把数据元素存放在任意的存储单元里,可以是连续的,也可以是不连续的。数据元素的存储关系并不能反映其逻辑关系,需要借助指针来表示数据之间的逻辑关系。






算法的时间复杂度从小到大排序:o(1)<o(log2^n)<o(n)<o(n^2)<o(n^3)o(2^n)<o(n!)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值