数据结构_算法

大二学期,我们开始学习《数据结构——从概念到C++实现》这门课程。老师们都说这是一门十分重要的学科,所以我一定要竭尽全力冲鸭!
下面简单总结一下本章知识:

一、数据的逻辑结构
对象=数据结构+算法 程序=对象+对象+……
1.数据:是对客观事物的符号表示,在计算机科学中,是指能输入到计算机并被计算机程序处理的符号的总称。
2.数据元素(结点):数据的基本单位,在计算机程序中通常作为一个整体进行考虑。一般由若干数据项组成,数据项是构成数据元素最小的、不可分割的单位。
3.数据结构:是数据及其元素之间相互关系的表示。
逻辑结构:数据元素之间存在的某种特定关系。
存储结构(物理结构):是数据及其逻辑结构在计算机中的表示。分类:顺序结构(紧凑存储结构,紧凑性可用“存储密度”来度量,地址相邻)、链式结构。
二、数据的存储结构
1.计算机主存储器的特性:
1)、其存储空间提供了一种具有非负整数地址编码的,相邻单元的集合,其基本的存储单元是字节。
2)、计算机的指令具有按地址随机访问存储空间内任意单元的能力。
2.利用指针在结点的存储结构中附加指针字段称为链接法。两个节点的逻辑后继关系可以用指针的指向来表达。任意的逻辑关系也可以使用这种指针地址来表达。一般的做法是将数据结点分为两部分——数据字段、指针字段。

三、算法
1.数据类型显式或隐含的规定了:
1)、在程序执行期间变量或表达式所有可能的取值范围,
2)、以及在这些值上允许执行的操作
即数据类型是一个值的集合和定义在这个值集上的一组操作的总称。
2.抽象数据类型:
由用户定义,用于表示应用问题的数据模型。
ADT是指一种数据结构以及定义在该数据结构上的一组操作,由基本的数据类型组成,并包括一组相关的服务(操作),信息隐蔽和数据封装,使用与实现相分离。
3.算法:
算法是为了求解问题而给出的有限的指令序列(解决问题的步骤)
程序是算法的一种实现,计算机按照程序逐步执行算法,实现对问题的求解。
常用的描述算法的方法有:自然语言,流程图,程序设计语言,伪代码等。

自然语言描述欧几里得算法(用辗转相除法求两个自然数m和n的最大公约数,并且假设m≥n):
在这里插入图片描述
4.算法分析
1)、时间复杂性
事前估计法–时间函数time()
事后统计法–用基本语句执行次数度量算法的时间复杂性
2)、空间复杂性
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值