数据结构面试

分为逻辑结构和存储结构。

逻辑结构:表示数据之间的相互关系。

存储结构:数据在内存的存储形式。

逻辑结构:

1.集合:数据结构中的元素之间除了“同属一个集合” 的相互关系外,别无其他关系; 

2.线性结构:数据结构中的元素存在一对一的相互关系; 

3.树形结构:数据结构中的元素存在一对多的相互关系; 

4.图形结构:数据结构中的元素存在多对多的相互关系。

线性结构就是表中各个结点具有线性关系。(线性表、栈、队列、数组)(线性表包括链表和顺序表)

非线性结构就是表中各个结点之间具有多个对应关系。(树、图)

链表和顺序表的区别:

顺序表里面元素的地址是连续的,空间连续,支持随机访问

链表里面节点的地址不是连续的,是通过指针连起来的。不支持随机访问

 

物理结构又叫存储结构,分为四种种,顺序存储结构、链式存储结构、索引结构、散列结构。

1.顺序存储结构:

一段连续的内存空间。

优点:随机访问

缺点:插入删除效率低,大小固定

                              

2.链式存储结构:

不连续的内存空间

优点:大小动态扩展,插入删除效率高

缺点:不能随机访问。

                                      

3.索引存储结构:

为了方便查找,整体无序,但索引块之间有序,需要额外空间,存储索引表。

优点:对顺序查找的一种改进,查找效率高

缺点:需额外空间存储索引

4.散列存储结构:(哈希=散列)

选取某个函数,数据元素根据函数计算存储位置可能存在多个数据元素存储在同一位置,引起地址冲

优点:查找基于数据本身即可找到,查找效率高,存取效率高。

缺点:存取随机,不便于顺序查找。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值