为了账号安全,请及时绑定邮箱和手机立即绑定

第一阶段:Java内功秘籍-线性表

标签:
Java

webp

标题图

前言

为什么要学习数据结构与算法,如果你学会了做安卓,javaweb,前端等,都是你的武功秘籍,但是如果你的内功不够好,再厉害的功夫也是白费。

数据结构和算法:什么是数据结构,什么是数据,在计算机内部数据为01010101。。。,数据是我们生活中一切的事务都可以表示为数据,如你和你朋友聊天的话都是数据,朋友圈的发表内容也是内容。

数据结构是数据之间相互存在的一种或多种特定的关系,数据之间的关系。数据结构的关系,要么一对一,或者一对多。

er图,实体关联图。数据与数据之间的关系,分:

  • 图形结构

  • 树形结构

  • 线性结构

  • 集合结构

webp

逻辑结构.png

webp

图形结构

webp

树形结构

webp

线性结构

webp

集合结构

以上图形的圆不代表相同的元素,都是不同的小圈圈哦~

还有两个存储结构:

顺序存储结构和链式存储结构

webp

顺序存储结构

webp

链式存储结构

抽象数据类型

那么什么是抽象数据类型,是一个数字模型以及定义在该模型上的一组操作,数据类型是将相同的一组性质的集合,和定义在此集合上的操作。

线性表

线性表,线性结构,表结构。

webp

线性表

线性表有两种不同的存储方式

顺序存储方式线性表存储位置连续,方便查询各个元素。优点在查找的时候效率比较高的,但在插入和删除的时候效率比较低。

链式存储方式线性表,对于链表存储的单元是可以连续的,也可以不连续,在链式中存储包含datanext->data

P p1=new P();
p1.data = "data";
P p2=new P();
p1.data = p2;

对于链式存储结构,优点是插入和删除效率高,而查询效率低。

链式和顺序存储优缺点

顺序存储方式线性表优点在查找的时候效率比较高的,但在插入和删除的时候效率比较低。

对于链式存储结构,优点是插入和删除效率高,而查询效率低。

webp

比较

循环链表

循环链表为一种链式存储结构,它的最后一个结点指向头结点,形成一个环,这种头尾相连的单链表称为单循环链表,简称循环链表

循环链表中的任何一个结点出发,它都能够找到其他结点,循环链表的操作单链表的操作是一样的,差别就在于算法中的循环条件不同而已。

双向循环链表也叫双链表,是单向循环链表的每个结点中,再设置一个指向其前驱结点的指针域,双向链表是链表的一种。



作者:达叔小生
链接:https://www.jianshu.com/p/8d49088b10ba


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消