| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> 数组和链表的联系和区别 -> 正文阅读 |
|
[数据结构与算法]数组和链表的联系和区别 |
一、数组和链表的联系数组和链表都是线性表数据结构。 二、数组和链表的区别1.数组可以随机以及顺序存取,而链表只能顺序存取。 2.数组静态分配内存,链表动态分配内存。 3.数组是一种线性表数据结构,有一组连续的内存空间,链表是通过指针将一组零散的内存块串联起来使用的数据结构,不需要一块连续的内存空间。 时间复杂度:已知一个链表A和数组B的第一个节点的位置,想让大家访问第n个节点,数组比链表快。?? 1.数组-> 拿第一个的位置+ n* 每个的长度 -> 找到第n个位置(地址)->直接根据地址访问即可->O(1) 2.链表-> 第一个的位置 不断->遍历 直到第n个节点位置 (1+M)/2 = 0.5+M/2 ->O(M)->O(n)
存储空间:假如要存储n个节点,数组和链表消耗的空间也不同 1.数组容量->n 2.链表 n+m->(x*n) =>(类似)2n 为了方便后续的管理操作,我们并没有删掉最后一个指向空的节点,所以最后一个节点也占了空间,所以链表所消耗的空间也就类似是2n了。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 15:40:23- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |