c语言----数据结构(整理)1

网上整理的,有侵权,发1004332984qq.com
c语言----数据结构

1.基础知识

1.数据元素是数据的基本单位。
2.数据项是数据不可分割的最小单位。
3.数据结构及其形式定义:
 数据结构:互相之间存在一种或多种特定关系的数据元素的集合。
四种基本结构:
	a.集合
	b.线性结构
	c.树形结构
	d.图(网)状结构
4.数据结构的
	逻辑结构:抽象的,与现实无关,与算法设计有关。
	物理结构:存储结构
		a.顺序存储结构----位置相邻
		b.链式存储结构----指针表示关系
5.数据类型
	抽象数据类型(ADT)
	ADT = 数据对象、数据关系、基本操作。
	ADT 细分为: 原子类型、固定聚合、可变聚合类型。
6.算法的概念
	是对待定问题求解步骤的一种的描述,它是指令的有限序列,其中一个指令表示一个或多个操作。
7.算法的五个特征
	a.有穷性
	b.确定性
	c.可行性
	d.输入
	e.输出
8.算法设计要求(4)
	a.正确性
	b.可读性
	c.健壮性
	d.效率与低存储量
正确性有四个层次,通常要达到c层
9.算法的时间复杂度
	常见:
	1.常数阶O(1)‌:时间与数据规模无关,如交换两个变量值。
	2.线性阶O(n)‌:时间和数据规模呈线性关系,如单循环里的操作。
	3.平方阶O(n²)‌:执行次数是n的平方,如双重循环。
‌	4.立方阶O(n³)‌:执行次数是n的立方,如三重循环。
‌	5.k次方阶O(n^k)‌:执行次数是n的k次方,如多重循环。
‌	6.指数阶O(2^n)‌:随着n的上升,运算次数呈指数增长。
	7.对数阶O(log n)‌:执行次数呈对数缩减。
‌	8.线性对数阶O(n log n)‌:在对数阶的基础上,进行线性n倍乘积

时间复杂度:
是通过估计算法的操作单元数量来计算的,每个操作单元的运行时间是相同的。
总运行时间是算法的操作单元数量乘以每个单元的运行时间,最多相差一个常量系数。
因此,时间复杂度通常用函数T(n)表示,其中n是问题的规模。时间复杂度的分类基于函数T(n)的形式,
例如T(n) = O(n)的算法被称为“线性时间算法”,而T(n) = O(2^n)的算法被称为“指数时间算法”。

‌空间复杂度的定义和常见级别‌:
空间复杂度是对一个算法在运行过程中占用内存空间大小的度量。它包括存储空间
和用于数据操作的辅助空间。常见的时间复杂度级别包括O(1)和O(n),
其中O(1)表示常数阶,与数据量无关;O(n)表示线性阶,与数据量呈线性关系。
	s(n) = O(n)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值