数据结构概念

1.1什么数据结构

数据结构是各种数据元素的一种集合。

1.2数据结构的作用

1.2.1衡量一个程序是否优秀

通过时间复杂度,空间复杂度衡量

1、1时间复杂度

数据量增长与程序运行时间的比例关系以函数描述称为时间渐进复杂度函数,简称时间复杂度。复杂度关系如下:(递增)

O(c)<O(logn)<O(n)<O(nlogn)<O(n^2)<O(n!)<O(2^n)

1.2空间复杂度

数据量增长与程序所占空间的比例关系

1.3数据结构关系

1.3.1逻辑结构

线性结构,非线性结构。

1.3.2存储结构

链式存储,顺序存储,离散存储,索引存储

1.4数据结构种类

顺序表, 链表,栈,队列,数,图

1.4.1链表和顺序表的区别

1.链表空间不连续,顺序表空间连续

2.顺序表存储空间需求大,空间复杂度比链表大

3.链表的插入,删除效率高,时间复杂度比顺序表小

1.4.2链表分类

单项链表, 双向链表,循环链表,内核链表

相关推荐
欢呼的太阳2 小时前
数据库设计Step by Step (10)——范式化
服务器·数据库·oracle
千寻xun2 小时前
一、理论篇-NVME协议学习笔记
笔记·学习·fpga开发·nvme ssd·nvme协议
researcher-Jiang3 小时前
高性能计算之OpenMP——超算习堂学习1
android·java·学习
夜雪一千3 小时前
Python enumerate() 函数完整详解:遍历同时获取索引,告别手动计数
服务器·windows·python
donoot3 小时前
Linux系统下图书馆级电子书全自动标准化分类整理完整实施方案
大数据·linux·运维·电子书管理
似是燕归来4 小时前
嵌入式工程师进阶指南:适配器编程设计模式一
c语言·stm32·适配器模式·嵌入式开发
Felix-lxd4 小时前
Ubuntu 22.04 配置 Nginx
linux·nginx·ubuntu
西门吹-禅4 小时前
java springboot N+1问题
java·开发语言·spring boot
skywalk81635 小时前
设计并实现段言的 C FFI 绑定机制 @Trae
c语言·开发语言·python·编程
大E帝国子民15 小时前
MacOS 安装Seismic Unix
服务器·macos·unix