校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > 数据结构 > 时间、空间复杂度
题目

  讲讲常用的数据结构及他们之间的区别及使用场景  (百度面试题)

解答

一.数据结构分类

数据的逻辑结构
1.集合:数据结构中的元素之间除了“同属一个集合” 的相互关系外,别无其他关系;
2.线性结构:数据结构中的元素存在一对一的相互关系;
3.树形结构:数据结构中的元素存在一对多的相互关系;
4.图形结构:数据结构中的元素存在多对多的相互关系。

数据的存储结构:
顺序存储结构:数据元素在内存中的物理存储顺序与他们的逻辑顺序相同
链式存储结构:使用若干地址分散的存储单元存储数据元素,逻辑上相邻的数据元素在物理位置上不一定相邻,数据元素之间的关系需要采用附加信息特别指定。c语言采用指针,Java采用引用指定。

线性结构和非线性结构两类
线性结构:最多只有一个直接前趋结点(第一个没有)和一个直接后继结点。栈、队列等都属于线性结构
非线性结构:可能有多个直接前趋结点和多个直接后继结点,数组、广义表、树结构

数据结构分类
数据结构是指相互之间存在着一种多种关系的数据元素的集合该集合中数据元素之间的关系组成 。
常用的数据结构有:数组,栈,链表,队列,树,图,堆,散列表

二.八种常见数据结构

1、数组
2、栈
3、队列
4、链表
5、树
6、散列表
7、堆
8、图

C 0条回复 评论

帖子还没人回复快来抢沙发