ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

各种数据结构的优缺点

2022-09-03 01:02:06  阅读:147  来源: 互联网

标签:各种 下标 线性表 元素 优缺点 链表 数组 数据结构 节点


数组:

 类似线性表,在内存中连续的存储多个元素的结构.内存也连续分配的,数组的元素可以通过下标访问,下标是从0开始.

数组优点:

1,支持随机访问,通过下标(索引)访问元素速度快;

2,可以通过下标进行遍历.

 

数组缺点:

1,数组在定义的时候,初始化的数组的容量大小,无法修改;

2,只能存储一种类型的数组;

3,删除,添加元素的操作慢(尾部操作除外).

栈:

  是一种特殊的线性表,只能在栈顶操作,栈底不允许操作,特点:先进后出,常用于递归.

队列:

  是一种线性表,在一端添加元素,在一端取出元素,特点:先进先出.常用于多线程阻塞队列管理

链表:

  是物理存储单元上非连续,非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现;链表的是由节点组成的,每个节点有两部分内容,一部分是存储元素的数据域(内存空间),一部分是指向下一个节点地址的指针域.分为单链表,双向链表以及循环链表.

链表的优点:

1.不需要初始化容量,可以任意增删元素;

2.添加,删除元素简便.

链表的缺点:

1,比线性表多了指针域,占用内存会比较大;

2,不支持随机访问,查找元素需要遍历链表,速度慢耗时,而且单链表只能从头到尾遍历链表,双向链表才能双向遍历;

树:

  是一种非线性的数据结构,类似树状的结构,有唯一的根结点以及互不相见的叶子节点.最常见的有二叉树.

二叉树的特点:

1,每个节点做多只能有2个子树,左子树和右子树,节点的度最大为2;

2,若只有一个节点,也要分左子树和右子树;

优点:既有链表的优点又有数组的优点,添加,删除节点很快,查找也比较优化.

缺点:可能会出现退化,退化成链表,造成树的深度很大,查找效率变慢.

 

标签:各种,下标,线性表,元素,优缺点,链表,数组,数据结构,节点
来源: https://www.cnblogs.com/chen1425615833/p/16651488.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有