Linux 数据结构 顺序表 链表

数据结构:

1.衡量一个程序是否优秀:
1.时间复杂度:

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

O(c) > O(logn) > O(n) > O(nlogn) > O(n^2) > O(n^3) > O(2^n) (可以参考数学坐标图理解)
2.空间复杂度:

数据量增长与程序所占用空间的比例关系称为空间复杂度

2.数据结构:

数据之间的关系
逻辑结构:

  1. 线性结构

一对一 表

  1. 非线性结构

一对多 树

多对多 图

存储结构:

  1. 顺序存储结构

  2. 链式存储结构

  3. 离散存储

  4. 索引存储

3.程序:

程序 = 数据结构 + 算法

4.顺序表

5.链表:

1.空间可以不连续,访问元素不方便

2.链表需要更大的空间存放数据和节点地址

3.链表空间不连续,使得理论上长度是无限的

4.链表的插入和删除效率很高

链表的分类:

1.单向链表

2.双向链表

3.循环链表

4.内核链表

相关推荐
逻辑驱动的ken几秒前
Java高频面试考点04
java·开发语言·算法·哈希算法·散列表
_日拱一卒几秒前
LeetCode:142环形链表Ⅱ
算法·leetcode·链表
小饕几秒前
RAG学习之 - 检索质量评估指标详解:从概念到代码实战
开发语言·人工智能·python·学习
TTGGGFF2 分钟前
SnapTranslate 3.0 正式发布:全局划词翻译 + 完整英语学习闭环,一站式搞定查词、记词、复习
学习·英语学习·生词本
回忆2012初秋2 分钟前
C# 射线算法:判断GPS点是否在车辆工作区域内
linux·算法·c#
_李小白4 分钟前
【OSG学习笔记】Day 52: FadeText
笔记·学习
sali-tec5 分钟前
C# 基于OpenCv的视觉工作流-章51-点查找
图像处理·人工智能·opencv·算法·计算机视觉
黎雁·泠崖9 分钟前
二叉树遍历:LeetCode 144 / 94 / 145 之递归 + 分治 + 非递归
java·数据结构·算法·leetcode
弹简特9 分钟前
【Linux命令饲养指南】Ubuntu 安装 MySQL【AI辅助实现】
linux·mysql·ubuntu
CompaqCV9 分钟前
OpencvSharp 算子学习教案之 - Cv2.Add
学习·c#·opencvsharp算子