美文网首页
数据结构-数组

数据结构-数组

作者: jkwen | 来源:发表于2021-05-06 00:05 被阅读0次

数组是最基础的数据结构,通常用来表示其他逻辑数据结构。

数组是有限个相同类型的变量所组成的有序集合,每个变量被称为元素。

对应数据结构的增,删,改,查操作,数组的查找和更新非常方便,利用位置下标能在 O(1) 时间复杂度上完成。

但对于数组元素的新增,则变得不那么顺利,需要 O(n) 级别的时间复杂度才能完成。具体情况可分为末尾新增,非末尾新增,考虑到数组有可能满了,就需要进行扩容,扩容之后再继续新增。

数组元素的删除,会比新增相对的简单一些,但依然需要 O(n) 级别的时间复杂度才能完成。同样,具体情况可分为末尾删除,非末尾删除。能让删除时间节省的小技巧,末尾元素覆盖待删除元素,清空末尾元素,这样不涉及遍历,自然时间复杂度能降到 O(1) 级别

综上,数组适合做改,查操作,不太适合做增,删操作。

参考内容

「漫画算法-小灰的算法之旅」

相关文章

  • 数据结构:数组

    00数据结构与算法分析:大纲01数据结构:数组02数据结构:链表03数据结构:栈03数据结构:队列 数组 数组是一...

  • 重温:数据结构与算法 - 03数组

    数据结构与算法之美 - 数组 数据结构与算法之美-学习大纲 什么数组? 数组是一种 线性表 数据结构。它用一组 连...

  • 关于HashMap,这篇文章已经总结很详细了

    HashMap的底层数据结构? HashMap 是我们非常常用的数据结构,由 数组和链表组合构成 的数据结构。数组...

  • 剑指offer阅读(一)

    数据结构 面试题二: 数组 数组是一种最简单的数据结构,占据一块连续的数据结构并按照顺序存储数据。创建数组时,我们...

  • HashMap原理基础

    数据结构分析 数据结构:数组+链表(或红黑树) 数组:Entry implements Map.Entr...

  • Kotlin数据容器(1)✔️数组

    对象数组基本数据类型数组   数据容器是基于某种数据结构的,常见的数据结构有数组 (Array)、集 (Set)、...

  • ArrayList、LinkedList、Vector的区别

    1.从存储数据结构分析 ArrayList:数组 Vector:数组 LinkedList:双向链表数组:(数组属...

  • ArrayList和LinkedList——数组VS链表

    一、数据结构 1.1 数组 ArrayList是一种数组类型的数据结构,数组是内存中一段地址连续的空间。 我们使用...

  • ConcurrentHashMap 1.7和1.8的区别

    一、1.7中数据结构 Segment数组 + HashEntry数组 + Reentrantlock Segmen...

  • 11.11

    今天把数组方面的数据结构题目刷了10多道。 明日计划: 学完数组方面的数据结构题目 学习单链表的数据结构题目

网友评论

      本文标题:数据结构-数组

      本文链接:https://www.haomeiwen.com/subject/jxhrdltx.html