常见的数据结构(顺序表、顺序表、链表、栈、队列、二叉树)

线性表(Linear List) 

    1.什么是线性表

    2.线性表的特点

    3.线性表的基本运算

顺序表

    1.什么是顺序表

    2.时间复杂度:

链表

    1.什么是链表

    2.单向链表

    3. 双向链表

    4.ArrayList和LinkedList的使用

栈Stack 

    1.什么是栈 

    2.栈的基本方法

队列Queue

    1.什么是队列 

    2.队列的特点

    3.队列的基本方法

二叉树

    1.什么是二叉树

    2.特别二叉树

线性表(Linear List)

1.什么是线性表

     零个或多个数据元素的有限序列。

2.线性表的特点

     有且仅有一个开始结点,无直接前趋,有且只有一个直接后继

     有且仅有一个结束结点,有且只有一个直接前趋,无直接后继。

     内部结点都有且只有一个直接前趋和一个直接后继

 3.线性表的基本运算

       initList:初始化操作,建立一个空的线性表
       listEmpty:若线性表为空,返回true,否则返回false
       clearList:将线性表清空
       getElem(index):将线性表中第index个位置的元素值返回
       locateElem(value):在线性表中查找与value值相等的元素,查找成功则返回该元素在线性表中的索引,否则返回-1
       listInsert(index,value):在线性表中第index个位置插入value
       listDelete(index):删除线性表第index个位置元素,返回该值
       listLength:返回线性表实际存储元素个数,即长度
       getAll:遍历线性表

顺序表

1.什么是顺序表

    顺序表是按照顺序存储方式存储的线性表,是一种特殊的线性表。

2.时间复杂度:

    查询时间复杂度为O(1);

    插入和删除为O(n)。

链表

1.什么是链表

    链表是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的地址。链表可分为单向链表和双向链表。

2.单向链表

     一个单向链表包含两个值: 当前节点的值和一个指向下一个节点的链接。

3. 双向链表

 4.ArrayList和LinkedList的使用

      以下情况使用 ArrayList :

          频繁访问列表中的某一个元素。

          只需要在列表末尾进行添加和删除元素操作。

       以下情况使用 LinkedList :

          需要通过循环迭代来访问列表中的某些元素。

          需要频繁的在列表开头、中间、末尾等位置进行添加和删除元素操作。

栈Stack

1.什么是栈

     栈是Vector的一个子类,它实现了一个标准的后进先出的栈。

     入栈和出栈。

2.栈的基本方法

1boolean empty() 
测试堆栈是否为空。
2Object peek( )
查看堆栈顶部的对象,但不从堆栈中移除它。
3Object pop( )
移除堆栈顶部的对象,并作为此函数的值返回该对象。
4Object push(Object element)
把项压入堆栈顶部。
5int search(Object element)
返回对象在堆栈中的位置,以 1 为基数。 

 队列Queue

1.什么是队列

     队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。

 2.队列的特点

      1.只能在队首进行删除操作,在队尾进行插入操作

      2.先进先出,后进后出。

3.队列的基本方法

插入add(e)offer(e)
删除remove()poll()
查看element()peek()

二叉树

1.什么是二叉树

     二叉树就是一个根节点最多有左右两个孩子结点。

2.特别二叉树

     满二叉树:顾名思义,就是所有结点都是满的,有左有右。

     完全二叉树:完全二叉树是由满二叉树而引出来的,若一棵二叉树至多只有最下面两层的结点的度数可以小于2,并且最下层的结点都集中在该层最左边的若干位置上,则此二叉树为完全二叉树。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/58798.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

爬虫程序中使用爬虫ip的优势

作为一名爬虫技术员,我发现在爬虫程序中使用代理IP可以提升爬取效率和匿名性。今天,我就来详细讲解一下代理IP在爬虫程序中的工作原理及应用。 首先,我们来了解一下代理IP在爬虫程序中的工作原理。当我们使用爬虫程序进行数据采集时&#xf…

如何把非1024的采样数放入aac编码器

一. aac对数据规格要求 二、代码实现 1.初始化 2.填入数据 3.取数据 三.图解 一. aac对放入的采样数要求 我们知道aac每次接受的字节数是固定的,在之前的文章里有介绍libfdk_aac音频采样数和编码字节数注意 它支持的采样数和编码字节数分别是: fdk_aac …

如何实现 Java SpringBoot 自动验证入参数据的有效性

Java SpringBoot 通过javax.validation.constraints下的注解,实现入参数据自动验证 如果碰到 NotEmpty 否则不生效,注意看下 RequestBody 前面是否加上了Valid Validation常用注解汇总 Constraint详细信息Null被注释的元素必须为 nullNotNull被注释的元…

MATLAB详细安装教程(亲测有效!!)

1.复制以下链接,用百度网盘打开,下载 链接:https://pan.baidu.com/s/19AwQeCRYofGAV8sfDIm5PQ 提取码:mads 我是下载到D盘自己创建的文件中 2.下载完毕后打开此文件夹,点击最后一项 3.点击右上角高级选项&#xff0…

HBase-组成

client 读写请求HMaster 管理元数据监控region是否需要进行负载均衡,故障转移和region的拆分RegionServer 负责数据cell的处理,例如写入数据put,查询数据get等 拆分合并Region的实际执行者,由Master监控,由regionServ…

【MATLAB第65期】基于LSTM长短期记忆网络的多输入单输出数据预测未来思路介绍(短期预测)

【MATLAB第65期】基于LSTM长短期记忆网络的多输入单输出数据预测未来思路介绍(短期预测) 往期第13期已实现多输入单输出滑动窗口回归预测 多输入单输出滑动窗口回归预测 往期第54期已实现多输入多输出滑动窗口回归预测 多输入多输出滑动窗口回归预测 一…

neo4j终端操作

1】进入容器 (base) xiaokkkxiaokkkdeMacBook-Pro ~ % docker exec -it 77ed5fe2b52e /bin/bash 2】启动、停止neo4j root77ed5fe2b52e:/var/lib/neo4j/bin# ./neo4j start Neo4j is already running (pid:7). Run with --verbose for a more detailed error message.root7…

pycharm离线安装依赖包

一、对于单个下载离线包,然后安装 1、先去https://pypi.org/网站下载离线包,下载到本地; 2、从磁盘中找到刚刚下载包,点击确定就可以安装了 二、将本地项目所有依赖包全部下载下来,然后批量在另一个项目&#xff…

电脑IP地址错误无法上网怎么办?

电脑出现IP地址错误后就将无法连接网络,从而无法正常访问互联网。那么当电脑出现IP地址错误时该怎么办呢? 确认是否禁用本地连接 你需要先确定是否禁用了本地网络连接,如果发现禁用,则将其启用即可。 启用方法:点击桌…

【大数据Hive】Hive 内部表与外部表使用详解

目录 一、hive 内部表简介 1.1 查看内部表信息 二、hive 外部表简介 三、内部表与外部表对比 四、内部表与外部表操作演示 4.1 内部表操作 4.1.1 数据准备 4.1.2 建表sql 4.2 外部表操作 4.2.1 建表sql 4.2.2 上传数据文件到 /stu目录 4.2.3 内部表删除 4.2.4 外部…

角角の Qt学习笔记(一)

目录 一、解决在创建新项目时遇到的几个问题 二、信号和槽(非自定义) 三、调用 UI 中的元素(比如按钮) 一、解决在创建新项目时遇到的几个问题 在新建项目时,我选择的构建系统为CMake。然后勾选了Generate form&…

超级浏览器与指纹浏览器:功能与特点的比较

导语:随着互联网的快速发展,隐私和安全问题日益受到关注。在这个背景下,超级浏览器和指纹浏览器作为定制化浏览器的两个重要类型,各自具有独特的功能和特点。本文将对超级浏览器和指纹浏览器进行比较,帮助读者更好地理…