自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

原创 规则引擎Drools (6)

Spring整合Drools*参考b站黑马博学谷Drools视频,侵权请联系删除 *1 Spring简单整合Drools在项目中使用Drools时往往会跟Spring整合来使用。具体整合步骤如下:配置pom.xml文件,导入Drools相关依赖。创建规则目录/resources/rules,rules目录中创建规则文件xxx.drl。创建Spring配置文件/resources/spring.xml。最后编写测试类测试。2 Springboot整合Drools配置pom.xml

2021-10-19 23:06:27 240

原创 规则引擎Drools (5)

Drools高级用法*参考b站黑马博学谷Drools视频,侵权请联系删除 *1.global全局变量global关键字用于在规则文件中定义全局变量,它可以让应用程序的对象在规则文件中能够被访问。可以用来为规则文件提供数据或服务语法结构为: global 对象类型 对象名称。在使用global定义的全局变量时有两点需要注意:如果对象类型为包装类型时,在一个规则中改变了global的值,那么只针对当前规则有效,对其他规则中的global不会有影响。可以理解为它是当前规则代码中的global副本,规

2021-10-19 21:35:21 230

原创 规则引擎Drools (4)

规则属性(attributes)参考b站黑马博学谷drools视频,侵权请联系删除规则属性位于规则体的rulename和when之间。常用的有:(1)enable属性enabled属性对应的取值为true和false,默认值为true。用于指定当前规则是否启用,如果设置的值为false则当前规则无论是否匹配成功都不会触发。 如:(2)dialect属性dialec1t属性用于指定当前规则使用的语言类型,取值为java和mvel,默认值为java。注: mvel是一种基于java语法的表达式

2021-10-12 23:21:52 251

原创 规则引擎Drools (3)

Drools基础语法参考b站黑马博学谷drools视频,侵权请联系删除规则文件构成规则文件的后缀为.drl,一套完整的规则文件构成:关键字描述package包名,只限于逻辑上管理import用于导入类或者静态方法global全局变量function自定义函数query查询rule end规则体规则体语法结构规则体是规则文件内容中的重要组成部分,是进行业务规则判断、处理业务结果的部分。规则体的语法为:rule "ruleName

2021-09-27 23:17:30 137

原创 java开发之maven安装

maven安装Maven是基于项目对象模型(POM, Project Object Model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具。通俗的讲maven就是专门用于构建和管理项目的工具,可以帮助我们去下载我们所需要jar包,帮助我们去管理项目结构,帮助我们去实现项目的维护、打包等。注意:maven的安装需要依赖jdk的安装,所以必须先安装完成jdk且配置好jdk环境变量后再进行maven的安装!maven的安装很简单,直接解压文件就行了(前提是你下载的是

2021-09-08 23:03:05 609

原创 规则引擎Drools (2)

规则引擎drools参考b站黑马博学谷drools视频规则引擎的构成使用drools引擎的主要工作就是编写规则文件,在规则文件中定义跟业务相关的业务规则。规则定义好后就需要调用drools提供的api将数据提供给规则引擎进行规则模式匹配,规则引擎会执行匹配成功的规则并将计算结果返回。...

2021-08-12 23:36:18 206

原创 规则引擎Drools (1)

规则引擎droolsdrools是一款基于java的开源规则引擎,将规则与业务代码解耦。标题

2021-08-11 23:13:15 135

原创 菜鸟笔记之计算机网络(9)

第三章:数据链路1数据链路的作用数据链路相关技术MAC地址共享介质型网络非共享介质型网络根据MAC地址转发环路检测技术VLAN(虚拟局域网)声明:以下是学习《图解TCP/IP》第五版并结合网上资料所记的笔记,侵权请联系删除。可能会有一些错误,发现了会修改。数据链路的作用数据链路,指OSI参考模型中的数据链路层,有时也指以太网、无线局域网等通信手段。数据链路层的协议定义了通过通信媒介互连的设备之间传输的规范。 通信媒介包括双绞线电缆、同轴电缆、光纤、电波以及红外线等介质。此外,各个设备之间有时也会通过交

2020-11-23 16:15:18 403

原创 菜鸟笔记之计算机网络(8)

第二章:TCP/IP基础知识2TCP/IP分层模型与通信示例1. 数据包首部2. 发送数据包3. 经过数据链路的包4. 数据包接收处理声明:以下是学习《图解TCP/IP》第五版并结合网上资料所记的笔记,侵权请联系删除。可能会有一些错误,发现了会修改。TCP/IP分层模型与通信示例使用TCP/IP,从应用层到物理媒介数据处理的流程:1. 数据包首部每个分层中,都会对所发送的数据附加一个首部,在这个首部中包含了该层必要的信息,如发送的目标地址以及协议相关信息,首部的结构由协议的具体规范详细定义。通常,

2020-11-18 17:32:30 247

原创 菜鸟笔记之计算机网络(7)

第二章:TCP/IP基础知识1TCP/IP的诞生TCP/IP的具体含义TCP/IP的标准化流程互联网与TCP/IP的关系TCP/IP协议分层模型声明:以下是学习《图解TCP/IP》第五版并结合网上资料所记的笔记,侵权请联系删除。可能会有一些错误,发现了会修改。TCP/IP的诞生ARPANET的实验,不仅仅是利用几所大学与研究机构组成的主干网络进行分组交换的实验,还会进行在互连计算机之间提供可靠传输的综合性通信协议的实验。在20世纪70年代前半叶,ARPANET中的一个研究机构研发出了TCP/IP。 在

2020-11-17 15:50:10 296

原创 菜鸟笔记之计算机网络(6)

第一章:网络基础知识3传输方式的分类面向有连接型与面向无连接型电路交换与分组交换根据接收端数量分类地址地址的唯一性地址的层次性网络的构成要素虚拟化技术声明:以下是学习《图解TCP/IP》第五版并结合网上资料所记的笔记,侵权请联系删除。可能会有一些错误,发现了会修改。传输方式的分类面向有连接型与面向无连接型通过网络发送数据,大致可以分为面向有连接与面向无连接两种类型(面向无连接型包括以太网、IP、UDP等协议。面向有连接型包括ATM、帧中继、TCP等协议) 。面向有连接型:面向有连接型中,在发送

2020-11-16 21:33:47 458

原创 菜鸟笔记之计算机网络(5)

第一章:网络基础知识2OSI参考模型协议分层各个分层的作用案例声明:以下是学习《图解TCP/IP》第五版并结合网上资料所记的笔记,侵权请联系删除。可能会有一些错误,发现了会修改。OSI参考模型协议分层ISO在制定标准化OSI之前,对网络体系结构相关的问题进行了充分的讨论,最终提出了作为通信协议设计指标的OSI参考模型。这一模型将通信协议中必要的功能分成了7层。通过这些分层,使得那些比较复杂的网络协议更加简单化。在这一模型中,每个分层都接收由它下一层所提供的特定服务,并且负责为自己的上一层提供特定的

2020-11-16 15:57:35 159

原创 菜鸟笔记之计算机网络(4)

网络基础知识1计算机网络出现的背景声明:以下是学习图解TCP/IP第五版并结合网上资料所记的笔记,侵权请联系删除。可能会有一些错误,发现了会修改。计算机网络出现的背景起初,计算机以单机模式被广泛使用(指计算机未连接到网络,各自独立使用)。然而随着计算机的不断发展,人们已不再局限于单机模式,而是将一个个计算机连接在一起,形成一个计算机网络。连接多台计算机可以实现信息共享,同时还能在两台物理位置较远的机器之间即时传递信息。计算机网络,根据其规模可分为:广域网:Wide Area Network,WA

2020-11-13 17:31:46 220

原创 菜鸟笔记之计算机网络(3)

万维网了解万维网声明:以下是看的视频并结合网上资料所记的笔记,侵权请联系删除。可能会有一些错误,发现了会修改。了解万维网

2020-11-13 15:55:26 467

原创 菜鸟笔记之计算机网络(2)

互联网声明:以下是看的视频并结合网上资料所记的笔记,侵权请联系删除。可能会有一些错误,发现了会修改。

2020-11-13 10:41:57 122

原创 菜鸟笔记之计算机网络(1)

计算机网络概述计算机网络声明:以下是看的视频并结合网上资料所记的笔记,侵权请联系删除。可能会有一些错误,发现了会修改。计算机网络第一个计算机网络出现在1950~1960年代,通常在公司或研究室内部使用,为了方便信息交换。计算机近距离构成的小型网络,叫局域网(Local Area Networks),简称LAN。LAN能小到是同一个房间里的两台机器,也可以大到校园里的上千台机器。尽管开发了很多局域网技术,但是最著名和成功的是“以太网”,开发于1970年代在施乐的“帕洛阿尔托研究中心”,今日仍被广泛使用

2020-11-12 16:06:26 176

原创 菜鸟笔记之数据结构(26)

数据结构与算法—常用十种算法10马踏棋盘算法(骑士周游问题)声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。马踏棋盘算法(骑士周游问题)介绍--------------------------------------- 个人学习笔记----------------------------------------...

2020-11-10 16:21:20 156

原创 菜鸟笔记之数据结构(25)

数据结构与算法—常用十种算法9弗洛伊德(Floyd)算法声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。弗洛伊德(Floyd)算法算法介绍和迪杰斯特拉(Dijkstra)算法一样,弗洛伊德(Floyd)算法也是一种用于寻找给定的加权图中顶点间最短路径的算法。Dijkstra算法用于计算图中某一个顶点到其他顶点的最短路径,而Floyd算法是计算图中各个顶点之间的最短路径。Dijkstra算法通过选定的被访问顶点,求出从出发访问顶点到其他顶点的最短路径;Floy

2020-11-10 10:49:52 176

原创 菜鸟笔记之数据结构(24)

数据结构与算法—常用十种算法8迪杰斯特拉(Dijkstra)算法声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。迪杰斯特拉(Dijkstra)算法应用场景-最短路径问题算法介绍迪杰斯特拉(Dijkstra)算法是典型最短路径算法,用于计算一个结点到其他结点的最短路径。它的主要特点是以起始点为中心向外层扩展(广度优先搜索思想),知道扩展到终点为止。算法过程图解参考该文章 Dijkstra算法(三)之 Java详解代码import java.util.A

2020-11-09 20:32:50 131

原创 菜鸟笔记之数据结构(23)

数据结构与算法—常用十种算法7克鲁斯卡尔算法(Kruskal)声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。克鲁斯卡尔算法(Kruskal)应用场景-公交站问题算法介绍克鲁斯卡尔(Kruskal)算法,是用来求加权连通图的最小生成树的算法。基本思想:按照权值从大到小的顺序选择n-1条边,并保证这n-1条边不构成回路。具体做法:首先构造一个只含n个顶点的森林,然后按权值从小到大从连通网中选择边加入到森林中,并使森林中不产生回路,直至森林变成一棵树为止 。

2020-11-09 16:11:57 174

原创 菜鸟笔记之数据结构(22)

数据结构与算法—常用十种算法6普利姆算法(Prim)声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。普利姆算法(Prim)应用场景-修路问题思路: 修路问题的本质就是最小生成树的问题,最小生成树(Minimum Cost Spanning Tree),简称MST。给定一个带权的无向连通图,如何选取一颗生成树,使树上的所有边上权的总和为最小,这叫最小生成树。N个顶点,一定有N-1条边。包含全部顶点。N-1条边都在图中。求最小生成树的算法主要是普利姆算法

2020-11-06 12:21:44 232 2

原创 菜鸟笔记之数据结构(21)

数据结构与算法—常用十种算法5贪心算法声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。贪心算法应用场景-集合覆盖问题贪心算法介绍贪心算法(也叫贪婪算法)是指在对问题进行求解时,在每一步选择中都采取最好或者最优(即最有利)的选择,从而希望能够导致结果是最好或者最优的算法。贪心算法所得到的结果不一定是最优的结果(有时候会是最优解),但是都是相对近似(接近)最优解的结果。思路分析如何找出能覆盖所有地区的广播台的集合,如果使用穷举法实现,列出每个可能的广播台

2020-11-05 16:55:16 121

原创 菜鸟笔记之数据结构(20)

数据结构与算法—常用十种算法4暴力匹配算法KMP算法声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。应用场景字符串匹配问题:有一个字符串str1 = “硅硅谷 尚硅谷你尚硅 尚硅谷你尚硅谷你尚硅你好”,和一个子串str2 = “尚硅谷你尚硅你”。现在要判断str1是否含有str2,如果存在,就返回第一次出现的位置,如果没有就返回-1。暴力匹配算法如果用暴力匹配的思路,并假设在str1匹配到 i 位置,子串str2匹配到 j 位置,则有:如果当前字符匹

2020-11-05 11:10:48 111

原创 菜鸟笔记之数据结构(19)

数据结构与算法—常用十种算法3动态规划算法声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。动态规划算法应用场景:背包问题动态规划算法介绍动态规划(Dynamic Programming)算法的核心思想是:将大问题划分为小问题进行解决,从而一步步获取最优解的处理算法。动态规划算法与分治算法类似,基本思想也是将待求解问题分解为若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。与分治算法不同的是,适合用动态规划解决的问题,经分解得到子问题往往不是

2020-11-04 16:51:10 158 1

原创 菜鸟笔记之数据结构(18)

数据结构与算法—常用十种算法2分治算法分治算法最佳实践-汉诺塔声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。分治算法介绍:分治算法是一种很重要的算法。就是 把一个复杂的问题分成两个或更多的相同或者相似的子问题,再把子问题分成更小的子问题,直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并 。这个技巧是很多高效算法的基础,如排序算法(快速排序,归并排序),傅里叶变换(快速傅里叶变换)。分治算法可以求解经典的问题:二分搜索,大整数乘法,棋盘覆盖,合并

2020-11-03 16:46:21 99

原创 菜鸟笔记之数据结构(17)

数据结构与算法—常用十种算法1二分查找算法(非递归)声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。二分查找算法(非递归)特点:前面学过的二分查找是使用递归的方式,此处的二分查找是使用的非递归的方式。二分查找法 只适用于有序的数列 中进行查找(比如数字和字母等),将数列排序后再进行查找。二分查找法的运行时间为对数时间O(log2n),即查找到需要的目标位置最多只需要log2n步,假设从[0,99]的队列(100个数)中寻找目标数30,则需要查找步数为log2

2020-11-03 15:20:35 81

原创 菜鸟笔记之数据结构(16)

数据结构与算法—图2图的遍历深度优先遍历广度优先遍历应用实例声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。图的遍历所谓图的遍历,即对结点的访问,一个图有很多的结点,如何遍历这些结点,需要特定策略,一般有两种访问策略:(1)深度优先遍历(2)广度优先遍历。深度优先遍历图的深度优先搜索(Depth First Search,DFS)深度优先遍历,从初始访问结点出发,初始访问结点可能有多个邻接结点,深度优先遍历的策略就是首先访问第一个邻接结点,然后再以这个被访问

2020-10-30 22:13:35 104

原创 菜鸟笔记之数据结构(15)

数据结构与算法—图1图的基本介绍图的表示方式邻接矩阵邻接表图的创建声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。图的基本介绍线性表局限于一个直接前驱和一个直接后继的关系,树也只能有一个直接前驱也就是父节点,当我们需要表示多对多的关系时,这里我们就用到了图 。图是一种数据结构,其中结点可以具有零个或多个相邻元素。两个结点之间的连接称为边,结点也可以叫做顶点。顶点: A,B,C,D,E就称为顶点。边: A-B,B-C,B-D等称为边。无向图: 顶点之间的连接

2020-10-30 12:25:05 123

原创 菜鸟笔记之数据结构(14)

数据结构与算法—树6多叉树B树、B+树和B*树B树B+树B*树声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。前言: 二叉树的操作效率高,但是也存在问题。二叉树需要加载到内存的,如果二叉树的节点少,没什么问题但是如果二叉树的节点很多(比如1亿),就存在如下问题:在构建二叉树时,需要进行多次i/o操作(海量数据存在数据库或文件中)。节点海量,构建二叉树时,对速度有影响。节点海量,也会造成二叉树的高度很大,会降低操作速度。多叉树在二叉树中,每个节点有数据项,

2020-10-29 13:11:40 86

原创 菜鸟笔记之数据结构(13)

数据结构与算法—树5平衡二叉树平衡二叉树的构建子树高度的获取二叉排序树转为平衡二叉树声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。平衡二叉树又叫平衡二叉搜索树,AVL树。是在二叉排序树基础上的,可以保证查询效率较高,解决二叉排序树单支的情况(类似单链表)查询速度慢的问题。特点:它是一颗空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一颗平衡二叉树。平衡二叉树的常用实现方法有红黑树、AVL、替罪羊树、Treap、伸展树等。如上图所示,A

2020-10-28 22:37:14 97

原创 菜鸟笔记之数据结构(12)

数据结构与算法—树4二叉排序树概念二叉排序树的创建、遍历和删除声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。二叉排序树概念Binary Sort Tree,对于二叉排序树的任何一个非叶子结点,要求左子结点的值比当前结点值小,右子节点的值比当前结点的值大。如果有相同的值,可以将该节点放在左子节点或右子节点。二叉排序树的创建、遍历和删除public class BinarySortTreeDemo { public static void main(Strin

2020-10-28 15:05:51 142 1

原创 菜鸟笔记之数据结构(11)

数据结构与算法—树3赫夫曼树赫夫曼编码声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。赫夫曼树概念:给定n个权值作为n个叶子节点,构造一颗二叉树,若该树的带权路径长度达到最小,称这样的树为最优二叉树,也叫赫夫曼树(哈夫曼树)。它是带权路径长度最短的树,权值较大的结点离根较近。名词解释:路径:一棵树中,从一个结点往下可以达到的子节点,或孙子节点的通路,称为路径。路径长度:通路中分支的数目称为路径长度,根节点到第L层结点的路径长度为 L-1 。权:树中结点的值

2020-10-27 21:09:54 173

原创 菜鸟笔记之数据结构(10)

数据结构与算法—树2顺序存储二叉树线索化二叉树声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。顺序存储二叉树概念:指的是使用顺序表(数组)存储二叉树。需要注意的是,顺序存储只适用于完全二叉树,换句话说,只有完全二叉树才可以使用顺序表存储。数组存储方式和树的存储方式可以相互转换。 如下:特点:第n个元素的左子结点为2n+1;第n个元素的右子结点为2n+2;第n个元素的父结点为(n-1) / 2;n表示二叉树中第n个元素(按0开始编号)。例如:给你一个

2020-10-27 11:52:55 139 1

原创 菜鸟笔记之数据结构(9)

数据结构与算法—树1树的介绍二叉树前序、中序、后序遍历前序、中序、后序查找节点的删除声明:以下是学的尚硅谷网课并结合网上资料所记的笔记。可能会有一些错误,发现了会修改。树的介绍概念树是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点:每个节点有零个或多个子节点;没有父节点的节点称为根节点;每一个非根节点有且只有一个父节点;除了根节点外,每个子节点可以分为多个不相交的子树。注:

2020-10-26 17:04:30 98

原创 菜鸟笔记之数据结构(8)

数据结构与算法—哈希表也叫散列表,是根据关键码值而直接进行访问的数据结构。通过关键码值映射到表中的一个位置来访问记录,以加快查找速度。这个映射函数叫做散列函数(哈希函数),存放记录的数组叫做散列表。散列表是数组+链表实现的。哈希表实现步骤整个过程其实只有两步:存储时,通过哈希函数计算记录的哈希地址,并按此地址存储该记录。查找记录时,同样通过哈希函数计算记录的散列地址,按此散列地址访问该记录。哈希函数可以用除留余数法:添加位置的地址下标 = 关键字 / 数组的大小。哈希冲突对不同的关键字可

2020-10-22 18:35:13 101

原创 菜鸟笔记之数据结构(7)

数据结构与算法—查找算法线性查找二分查找插值查找斐波那契查找声明:以下都是学的尚硅谷网课所记的笔记。可能会有一些错误,发现了会修改。查找算法主要有顺序查找(线性查找),二分查找(折半查找),插值查找和斐波那契查找。线性查找顺序查找是按照序列原有顺序对数组进行遍历比较查询的基本查找算法。对于任意一个序列和一个给定的元素,将给定元素与序列中元素依次比较,直到找出与给定关键字相同的元素,或者将序列中的元素与其都比较完为止。二分查找二分查找也称折半查找(Binary Search),它是一种效率较高的查

2020-10-22 12:31:59 91

原创 菜鸟笔记之数据结构(6)

数据结构与算法—排序算法(2)冒泡排序选择排序插入排序希尔排序快速排序归并排序基数排序堆排序声明:以下都是学的尚硅谷网课所记的笔记。冒泡排序原理: 对待排序序列从前往后(从下标较小的元素开始),依次比较相邻元素的值,如果逆序则交换,使得值较大的元素逐渐从前往后移,就像水泡一样逐渐往上冒。规则:一共需要进行数组的大小减1次循环;每一趟需要排序的次数逐渐减小;优化: 如果发现某趟排序中,没有发生一次交换,则可以提前结束冒泡排序。//只列出关键代码int temp = 0;boolean

2020-10-13 16:22:48 112 1

原创 菜鸟笔记之数据结构(5)

数据结构与算法—排序算法(1)排序算法算法的时间复杂度声明:以下都是学的尚硅谷网课所记的笔记。排序算法排序算法,即通过特定的算法因式将一组或多组数据按照既定模式进行重新排序。 排序算法的基本分类如下图所示。算法的时间复杂度算法的时间复杂度用以度量程序或算法的执行时间,有事后统计和事前估算的方法,通常会先对程序采用事前估算的方法计算。时间频度: 算法花费的时间和算法中语句的执行次数成正比。一个算法中语句的执行频次称为语句频度或时间频度。时间复杂度的计算:算法中基本操作语句的重复执行次数是

2020-10-12 16:13:30 80

原创 菜鸟笔记之数据结构(4)

数据结构与算法—栈栈的介绍前缀、中缀、后缀表达式递归声明:以下都是学的尚硅谷网课所记的笔记。栈的介绍stack: 先入后出的有序列表(FILO),栈限制线性表中元素的插入和删除只能在线性表的 同一端 进行的一种特殊线性表,允许插入和删除的一端为变化的一端,称为栈顶,另一端为固定的一端,称为栈底。入栈(push),出栈(pop)。应用场景:子程序调用:跳往子程序前,将下个指令地址存到堆栈中,当子程序执行完再将地址取出,回到原程序,处理递归调用。表达式的转换和求值。中缀表达式转后缀表达式。二叉树

2020-10-11 11:11:06 97

原创 菜鸟笔记之数据结构(3)

数据结构与算法—链表单链表特点往链表的指定位置插入节点面试题新浪面试题腾讯面试题百度面试题双链表特点单向环形链表(无头节点)声明:以下都是学的尚硅谷网课所记的笔记。单链表单链表:是有序的列表,但在内存中的存储不是连续的。特点链表以节点方式存储;每个节点有data域,next域,分别存放数据和下一个节点地址;各节点在内存中不一定连续存放;链表分为带头节点和不带头节点的链表。单链表的结构图如下:每一个节点都是自己编写的类对象,类中包含数据和下一个节点信息(即地址)。往链表的指定位置

2020-10-10 13:37:02 115

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除