基于JAVA的数据结构及算法(二)

1.数据类型:一组性质相同的数据的集合及该数据集合上的操作的总称。 如JAVA中的int类型、数据的集合-2147483648~2147483647、数据的加减乘除求余等

2.抽象数据类型:abstract data type (ADT)。 由一组数据模型及该模型的一组操作组成。

                             抽象数据类型一般使用一个三元组表示:ADT = (D,S,P) D是数据对象,S是D上的关系,P是D上的操作

                             在定义抽象数据类型用以下格式: ADT抽象数据类型名{

                                                                                                数据对象:<数据对象的定义>                                            

                                                                                                数据关系:<数据关系的定义>     

                                                                                                数据操作:<基本操作的定义>     

                                                                                          }

                             抽象数据类型可以对应一个JAVA类,数据对象与数据关系可以通过类的成员变量来储存或者表示,数据操作可以使用方法来实现

3.算法:算法就是为解决某一特定问题而规定的一系列的操作,是一组有序的指令的集合。

               算法有一个特性:输入:一个算法有0个或者多个输入

                                              输出:至少有一个输出,没有输出的算法没有意义

                                               有穷性:算法中执行指令的个数是有限的,执行有穷的步骤后能结束

                                              确定性:对于特定的合法输入它的输出应该是唯一的

                                              可行性:算法能够实现,并且在有限的时间内可以完成。

                算法设计需求:   正确性:没有语法错误,对于合法的输入产生满足要求的输出,对于特定的输入也能够产生正确的输出。

                                              可读性:算法另一个目的是为了交流,方便阅读

                                               健壮性:对于不合理的要求能够给出合理的提示信息

               评价算法的好坏实际上就是评价算法占用的资源占用率

4.时间复杂度:讨论计算机程序运行的时间可以采用以下方法:1、事后统计:编程实现这个算法,统计所需要的时间

                                                                                                           2、事前分析:采用渐进时间复杂度分析估算

                           渐进时间复杂度,简称时间复杂度,在进行算法分析时,语句总的执行次数,计作T(n),是关于问题规模n的函数,分析T(n)随着问题规模n的增大,算法执行的时间增长率和f(n)函数的增长率相同,f(n)是问题规模n的一个函数

                           随着输入规模n的增大,T(n)的增长越慢越好

5.空间复杂度: 为了求解某一问题,在执行操作期间所需要的存储空间大小。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值