计算机考研之数据结构【一】—— 概念与算法

一、数据的概念

1、数据的结构

数据的最小单位是(数据项)
抽象数据类型是一个完整的(数据结构)
顺序表、单链表、哈希表属于(数据结构)——同时包括逻辑结构、存储结构和数据运算
循环队列属于(数据结构)——顺序表表示的队列

2、数据的逻辑结构

数据的逻辑结构包括(线性结构)和(非线性结构)
线性结构包括(线性表、栈、队列、串、数组和广义表)
非线性结构包括(树、图、集合)
有序表属于(逻辑结构)——关键字有序的顺序表,可以顺序存储也可以链式存储,仅描述逻辑关系

3、数据的存储结构

数据的存储结构有(顺序存储)、(链式存储)、(索引存储)、(散列存储)。
顺序存储仅存储数据元素,存储密度高,逻辑相邻物理也相邻
链式存储存储指针占用额外空间,物理不相邻
索引存储存储索引表占用空间,检索速度快
散列存储可能发生冲突
顺序存储采用(随机存取)方式
链式存储采用(顺序存取)方式
栈、线性表均可采用(顺序存储)或(链式存储)
链式存储设计时,不同节点的存储空间可以(不连续),但是节点内的存储单元地址(一定连续)

二、算法

时间复杂度排序
O ( 1 ) < O ( log ⁡ 2 n ) < O ( n ) < O ( n log ⁡ 2 n ) < O ( n 2 ) < O ( n 3 ) < O ( 2 n ) < O ( n ! ) < O ( n n ) O(1)<O(\log_{2}n)<O(n)<O(n\log_{2}n)<O(n^2)<O(n^3)<O(2^n)<O(n!)<O(n^n) O(1)<O(log2n)<O(n)<O(nlog2n)<O(n2)<O(n3)<O(2n)<O(n!)<O(nn)
某算法的时间复杂度是   O ( n 2 ) \ O(n^2)  On2,则表明该算法执行的时间与   n 2 \ n^2  n2成正比,问题的规模与n成正比。
算法需满足五大特性:有穷性、确定性、可行性、输入、输出
下面算法的时间复杂度是O(n)——本质为n的阶乘

int fact(int n){
	if(n = 1) return 1;
	return n*fact(n-1);
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值