数据结构学习

一、定义:

数据:所有能够输入到计算机中,且能倍计算机处理的符号的集合。

数据结构中主要讨论结构化数据。

数据项:用于描述数据元素(基本单位)

数据元素(基本单位)

数据项(最小单位)

数据对象(具有相同性质的若干个元素的集合,如整数数据对象是所有整数的集合)

默认情况下数据结构中讨论的数据都是数据对象

数据结构=数据对象 + 结构

数据结构中讨论的元素关系主要是指 相邻关系邻接关系

一个数据的构成

        逻辑结构:数据元素之间的逻辑关系(面向用户的)

               表现逻辑结构的方式:

                        表格,二维表,图形

        存储结构:数据元素及其关系在计算机存储器中的存储方式(面向程序员的)

                逻辑结构=》映射=》存储结构
             设计存储结构的这种映射应该满足两种要求

                        1、存储所有元素、

                        2、存储数据元素间的关系

                顺序存储结构、

                        ·所有元素占用一整块内存空间

                        逻辑上相邻的元素,物理上也相邻

                链式存储结构、

                        一个逻辑元素用一个节点存储,每个结点单独分配,所有结点的地址不一定是连续  的

                        用指针来表示逻辑关系

        数据运算:市价在该数据上的操作

                数据运算是对数据的操作,分为两个层次:运算描述和运算实现

         结论:同一逻辑结构可以对应多种存储结构

                      同样的运算,在不同的存储结构中,其实现过程是不同的。

        逻辑结构的类型:

                1、集合

                                        元素之间的关系:无

                                        特点:数据元素之间除了“属于同一个集合”的关系外,别无其他逻辑关系。是最松散的,不受任何制约的关系。

                2、线性结构

                                          元素之间的关系:一对一

                                          特点:开始元素和终端元素都是唯一的,除此之外,其余元素都有且仅有一个前驱元素和后继元素

                3、树形结构

                                           元素之间的关系:一对多

                                            特点:开始元素唯一,终端元素不唯一。除终端元素以外,每个元素有一个或多个后续元素;除开始元素外,每个元素有且仅有一个前驱元素。

        列提:

            4、图形结构

                       元素之间的关系:多对多

                        特点:所有蒜素都可能有多个前驱元素和多个后继元素       

        

2、存储结构类型         

                顺序存储结构

                链式存储结构

                索引存储结构

                哈希(散列)存储结构

3、数据类型和抽象数据类型

        1、数据类型

                在高级程序语言中提供了多种数据类型。不同数据类型的变量,其所能取的值的范围不同,所能进行的操作不同,所能进行的操作不同

        数据类型:是一个值的集合和定义在此集合上的一组操作的总称

算法及其描述

        算法的五个重要特征

                1、有穷性(在有穷步之后结束,算法能够停机)

                2、确定性 (无二义性)

                3、可行性   (可通过基本运算有限次执行来实现,也就是算法中每一个动作能够被机械地执行)

                4、有输入

                5、有输出 4.5表示存在数据处理

算法通常返回bool值 表示算法是否成功执行。

形参列表:由输入型参数和输出型参数个构成

算法分析的目的:分析算法的时空效率以便改进算法性能

算法分析方式

        1、事后分析统计方法:编写算法对应程序,统计其执行时间。

                

        2、事前估算分析方法:认为算法的执行时间是问题规模n的函数;

        

 

 递归算法的时空复杂度分析

        递归算法是指算法中出现调用自己的成分

        非递归算法分析也称为定长时空分析。

算法类别分为

        1、递归算法

        2、非递归算法

——————————————————————————————————————

线性表、

        

 线性表是客观事物的抽象

        

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值