
数据结构与算法
文章平均质量分 91
从最基础的线性表、栈、队列到图、树、字符串、广义表再到各种算法,带你通关数据结构与算法,不再是只会CV的码农
不会哭泣的呆子
希望把IT知识分享给更多人
展开
-
二叉树的定义、分类、性质和存储结构
在上篇文章中我们讲解了树的定义及表示,在树形结构中有一个非常重要的类型–二叉树,这篇文章我们就来讲解二叉树的定义、分类、性质和存储结构上文链接:树的定义及表示1.二叉树的定义二叉树是n(n≥0)个结点的有限集合,由一个根节点及两棵互不相交的、分别称为左子树和右子树的二叉树组成。如图1就是一棵二叉树,因为每个结点最多只有两个子结点,因此称之为二叉二叉树有两个基本特征:每个结点最多只能有两个子结点二叉树是有序树,左子树和右子树顺序不能颠倒,即使树中某个结点只有一棵子树,也要区别是左子树和右子树原创 2022-05-03 10:53:06 · 398 阅读 · 0 评论 -
树的定义及表示
在前面的一些文章中,我们介绍了一些线性数据结构,然而在实际应用中,仅有线性数据结构是不够的,如公司员工上下级关系,家族图谱,省市关系这些具有层级关系的很难用线性数据结构来表示,所以还要引入非线性数据结构,今天就带大家介绍一种非线性数据结构—树。1.树的相关定义树是由n(n ≥ 0)个结点组成的一个具有层次关系的集合,如图1所示:如果n=0,该树为一棵空树如果n>0,该树为一棵非空树,图1就是一棵非空树下面介绍一些树中的术语:结点:树中的每个元素成为结点根结点:在任意一棵树中,有且仅有一原创 2022-04-25 00:28:33 · 5674 阅读 · 2 评论 -
一篇文章带你通关BF算法与KMP算法
对于两个字符串,在主串中s中查找是否存在某一个子串t(一个串中任意个连续字符组成的子序列(包含空串)称为该串的子串),如果存在则返回串t在串s中第一次出现的位置。串s为主串,子串t成为模式串,这个过程也称为模式匹配*,下面来详细介绍下串的两种模式匹配算法:BF算法和KMP算法1.BF算法BF算法也称暴力匹配算法或有回溯的匹配算法,具体步骤为:从主串s的第一个字符开始与t的第一个字符做比较如果相等,继续逐个比较后续的字符如果不相等,使主串的第二个字符与t的第一个字符比较如果相等,继续逐个比较后续原创 2022-04-24 03:33:38 · 1129 阅读 · 0 评论