当前位置: 首页 > news >正文

【树与二叉树】树与二叉树的概念及结构--详解介绍

在这里插入图片描述

​📝个人主页:@Sherry的成长之路
🏠学习社区:Sherry的成长之路(个人社区)
📖专栏链接:数据结构
🎯长路漫漫浩浩,万事皆有期待

文章目录

  • 1.树概念及结构
    • 1.1 树的概念:
    • 1.2 树的相关概念
    • 1.3 树的表示
    • 1.3 树在实际中的运用
  • 2.二叉树概念及结构
    • 2.1 二叉树的概念
    • 2.2 特殊的二叉树
    • 2.2.1 满二叉树:
    • 2.2.2 完全二叉树:
    • 2.3 二叉树的性质
    • 2.4 二叉树的概念选择题
    • 2.5 二叉树的存储结构
    • 2.5.1. 顺序存储:
    • 2.5.2. 链式存储:
  • 3.总结:

学习顺序
树->二叉树->搜索二叉树->归并排序->M叉多叉平衡搜索树 (B树和B+树)

1.树概念及结构

1.1 树的概念:

是一种非线性的数据结构,它是由 n (n>=0) 个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下。

1.有一个特殊的结点,称为根结点,根节点没有前驱结点
2. 除根节点外,其余结点被分为 M (M>0) 个互不相交的集合 T1、T2 … 、Tm,其中每一个集合 Ti (1<=i<=m) 又是一棵结构与树类似的子树,每棵子树的根结点有且只有一个前驱,可以有0个或多个后继
3. 因此,树是递归定义

注意:树形结构中,子树之间不能有交集,否则就不是树形结构
▶ 子树是不相交的
▶ 除了根节点外,每个节点有且仅有一个父节点
▶ 一棵 N 个节点的树有 N-1 条连

1.2 树的相关概念

在这里插入图片描述
1.节点的度:一个节点含有的子树的个数称为该节点的度; 如上图:A 的为6
2.叶节点或终端节点度为0的节点称为叶节点; 如上图:B、C、H、I…等节点为叶节点
3.非终端节点或分支节点度不为0的节点; 如上图:D、E、F、G…等节点为分支节点
4.双亲节点或父节点:若一个节点含有子节点,则这个节点称为其子节点的父节点; 如上图:A 是 B 的父节点
5.孩子节点或子节点:一个节点含有的子树的根节点称为该节点的子节点; 如上图:B 是 A 的孩子节点
6.兄弟节点:具有相同父节点的节点互称为兄弟节点 (这里指的是亲兄弟,而非表堂兄弟); 如上图:B、C 是兄弟节点
7.树的度:一棵树中,最大的节点的度称为树的度; 如上图:树的度为 6
8.节点的层次从根开始定义起,根为第 1 层,根的子节点为第 2 层, 以此类推;如上图:树的层次为 4
9.树的高度或深度树中节点的最大层次 (这里有 2 种说法:一,根算 0;二,根算 1); 如上图:树的高度为 4
  - 这里推荐理解其二,因为:
  当要算空树的高度是多少时,按一的理解,高度是 -1;按二的理解,高度是 0
  当要算只有一个根节点的树的高度是多少时,按一的理解,高度是 0;按二的理解,高度是 1
10.堂兄弟节点双亲在同一层的节点互为堂兄弟;如上图:H、I 互为兄弟节点
11.节点的祖先从根到该节点所经分支上的所有节点;如上图:A 是所有节点的祖先
12.子孙以某节点为根的子树中任一节点都称为该节点的子孙。如上图:所有节点都是 A 的子孙
13.森林由 m(m>0) 棵互不相交的树的集合称为森林,并查集就是一个森林

1.3 树的表示

树结构相对线性表就比较复杂了,要存储表示起来比较麻烦,既要保存值域,也要保存结点和结点之间的关系。实际中树有很多种表示方式如:双亲表示法孩子表示法孩子双亲表示法以及孩子兄弟表示法等。我们这里就简单的了解其中最常用的孩子兄弟表示法

注意:对于树的定义其实并不好定义,因为其中有许多未知的因素

1、除非明确说明树的度是多少,比如树的度是 6

struct TreeNode
{int data;//这种结构其实是很浪费的,因为最大的度是6,但往下可能并没有那么多struct TreeNode* subs[6];//指针数组
}

2、如果没有说明树的度是多少,可以使用顺序表存储

struct TreeNode
{int data;SeqList subs;//顺序表中存储的是节点的指针//vector<struct TreeNode*>subs;//在C++学了模板后可以这样定义
}

3、双亲表示法

struct TreeNode
{int data;struct TreeNode* parent;
}

4、左孩子右兄弟表示法 (比较实用)

typedef int DataTpye;
struct Node
{struct Node* firstChild1;//第一个孩子节点(如有多个孩子,那么只指向最左边的)struct Node* pNextBrother;//指向下一个兄弟节点DataType data;//节点中的数据域
}

1.3 树在实际中的运用

表示文件系统的目录树结构
在这里插入图片描述

2.二叉树概念及结构

2.1 二叉树的概念

一棵二叉树是节点的一个有限集合,该集合:
1、或者为空
2、由一个根节点加上两棵别称为左子树和右子树的二叉树组成
在这里插入图片描述

1.二叉树不存在度大于 2 的结点
2.二叉树的子树有左右之分,次序不能颠倒,因此二叉树是有序树

注意:对于任意的二叉树都是由以下几种情况复合而成的:
在这里插入图片描述

2.2 特殊的二叉树

2.2.1 满二叉树:

一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是满二叉树。也就是说,如果一个二叉树的层数为 K,且结点总数是 2^k - 1,则它就是满二叉树。
在这里插入图片描述

2.2.2 完全二叉树:

完全二叉树的前 k - 1 层都满的第 k 层不一定满(这就意味着满二叉树是完全二叉树,但完全二叉树不一定是满二叉树),但是从最后一层从左到右必须是连续的,也就是说完全二叉树中度为 1 的节点最少 0 个,最多 1 个。完全二叉树是效率很高的数据结构,是由满二叉树而引出来的。对于深度为 K 的,有 n 个结点的二叉树,且每个结点都与深度为 K 的满二叉树中编号从 1 至 n 的结点 一一 对应称之为完全二叉树。要注意的是满二叉树是一种特殊的完全二叉树。

在这里插入图片描述

▶ 满二叉树的节点个数是等比求和

2^0 + 2^1 + 2^2 + … 2^(h-1)

利用公式所以满二叉树的节点个数就是 2^h - 1
在这里插入图片描述

▶ 完全二叉树的节点个数

最多: 2^h - 1  这是满二叉树

最少:2^(h-1) - 1 + 1  ->  2^(h-1)

2(^h-1) - 1 这是前 k-1 层节点的个数,+1 则是第 k 层至少一个

2.3 二叉树的性质

1.若规定根节点的层数为 1,则一棵非空二叉树的第 i 层上最多有 2^(i-1) 个结点

2.若规定根节点的层数为 1,则深度为 h 的二叉树的最大结点数是2^h - 1

3.对任何一棵二叉树, 如果度为 0 其叶结点个数为 n₀, 度为 2 的分支结点个数为 n₂,则有 n₀= n₂+1
在这里插入图片描述
4.若规定根节点的层数为 1具有 n 个结点的满二叉树的深度为 h = log₂(n+1)  ps:log₂(n+1)是 log 以 2 为底, n+1 的对数

5.对于具有 n 个结点的完全二叉树,如果按照从上至下从左至右的数组顺序所有节点从 0 开始编号,则对于序号为 i 的结点有:

▶ 若 i>0,i 位置节点的双亲序号:(i-1)/2;i=0,i 为根节点编号,无双亲节点

▶ 若 2i+1<n,左孩子序号:2i+1,2i+1>=n 否则无左孩子

▶ 若 2i+2<n,右孩子序号:2i+2,2i+2>=n 否则无右孩子

2.4 二叉树的概念选择题

1、某二叉树共有 399 个结点,其中有 199 个度为 2 的节点,则该二叉树中的叶子节点数为( )
A. 不存在这样的二叉树
B. 200
C. 198
D. 199

  • 分析:这里的叶子节点就是度为 0 的节点,已知二叉树中度为 2 的节点为 199 个,则度为 0 的节点等于度为 2 的节点 +1,所以选择 B 选项

2、下列数据结构中,不适合采用顺序存储结构的是( )注意此题可以先了解下面的二叉树的存储结构在来做
A. 非完全二叉树
B. 堆
C. 队列
D. 栈

  • 分析:顺序结构存储就是使用数组来存储,它只适合表示完全二叉树,因为不是完全二叉树会有空间的浪费。数组只适合存储完全二叉树或者满二叉树。
    所以选择 A 选项

3、在具有 2n 个节点的完全二叉树中,叶子节点个数为( )
A. n
B. n+1
C. n-1
D. n/2

  • 分析
    假设度为 0 的个数是 x0,度为 2 的个数是 x2,度为 1 的个数是 x1,那么:
    ▶ x0 + x1 + x2 = 2n
    ▶ x0 = x2 + 1
    由 x0 = x2 + 1 得到 x2 = x0 - 1
    所以 x0 + x1 + x2 = 2n --> x0 + x1 + x0 - 1 = 2n --> 2x0 + x1 - 1 = 2n
    又因为完全二叉树中度为 1 的节点最少 0 个,最多就只有 1 个,所以 x1 = 0 or 1
    所以 2x0 + x1 - 1 = 2n 就有 2 种情况:
    ▶ 2x0 + 0 - 1 = 2n
    ▶ 2x0 + 1 - 1 = 2n
    当 x1 = 0 时,x0为小数,显然不可能;当 x1 = 1 时满足,所以选择 A 选项

4、一棵完全二叉树的节点数为 531 个,那么这棵树的高度为( )
A. 11
B. 10
C. 8
D. 12

  • 分析
    假设完全二叉树的高度是 h,那么:最多有 2^h-1 个节点;最少有 2^(h-1) 个节点
    ▶ h = 11 时:最多 2047;最少 2014,所以不合理
    ▶ h = 10 时:最多 1023;最少 512,所以合情合理
    ▶ h = 8 时:最多 255;最少 128,所以不合理
    ▶ h = 12 时:最多 4095;最少 2048,所以不合理
    所以选择 B 选项

5、一个具有 767 个节点的完全二叉树,其叶子节点个数为 ( )
A. 383
B. 384
C. 385
D. 386

  • 分析:此题类似于第 3 题
    假设度为 0 的个数是 x0,度为 2 的个数是 x2,度为 1 的个数是 x1,那么:
    ▶ x0 + x1 + x2 = 767
    ▶ x0 = x2 + 1
    由 x0 = x2 + 1 得到 x2 = x0 - 1
    所以 x0 + x1 + x2 = 767 同 x0 + x1 + x0 - 1 = 767 同 2x0 + x1 - 1 = 767
    完全二叉树中度为 1 的节点最少 0 个,最多就只有 1 个
    所以 x1 = 0 or 1
    所以 2x0 + x1 - 1 = 767 就有 2 种情况:
    ▶ 2x0 + 0 - 1 = 767
    ▶ 2x0 + 1 - 1 = 767
    当 x1 = 0 时,满足条件;当 x1 = 1 时,不满足条件,所以选择 B 选项

2.5 二叉树的存储结构

二叉树一般可以使用两种结构存储,一种顺序结构,一种链式结构:

2.5.1. 顺序存储:

顺序结构存储就是使用数组来存储,它只适合表示完全二叉树,因为不是完全二叉树会有空间的浪费。而现实使用中只有堆才会使用数组来存储,二叉树顺序存储在物理上是一个数组,在逻辑上是一颗二叉树。如下图所见,数组只适合存储完全二叉树或者满二叉树
在这里插入图片描述

怎么表示二叉树的值在数组位置中父子下标关系的:

左孩子和右孩子
leftchild = parent * 2 + 1
rightchild = parent * 2 + 2

父亲 (这里无论是左孩子还是右孩子都适用于以下公式)
parent = (child - 1) / 2

在这里插入图片描述

2.5.2. 链式存储:

二叉树的链式存储结构是指用链表来表示一棵二叉树,即用链表来指示元素的逻辑关系。通常的方法是链表中每个结点由三个域组成,数据域和左右指针域,左右指针分别用来给出该结点左孩子和右孩子所在的链的存储地址。

链式结构又分为二叉链和三叉链,现阶段本篇文章我们只了解二叉链,在以后的文章内写到高阶数据结构时,如红黑树等会用到三叉链。

二叉链只能通过父亲找孩子,类似于单向链表;而三叉链不仅能通过父亲找孩子,还能通过孩子找父亲,类似于双向链表。

typedef int BTDataType;
//二叉链
struct BinaryTreeNode
{struct BinaryTreeNode* _pLeft; //指向当前节点的左孩子struct BinaryTreeNode* _pRight; //指向当前节点的右孩子	BTDataType _data; //当前节点的值域 
}//三叉链
struct BinaryTreeNode
{struct BinaryTreeNode* _pParent; //指向当前节点的父亲struct BinaryTreeNode* _pLeft; //指向当前节点的左孩子struct BinaryTreeNode* _pRight; //指向当前节点的右孩子BTDataType _data; //当前节点的值域
}

3.总结:

今天我们认识并学习了树与二叉树的相关概念,对树与二叉树有了一个整体的认识。并且对二叉树的两种存储结构也有了一定的了解。下一篇博客我们将学习二叉树顺序结构和实现以及堆的概念及结构。希望我的文章和讲解能对大家的学习提供一些帮助。

当然,本文仍有许多不足之处,欢迎各位小伙伴们随时私信交流、批评指正!我们下期见~

在这里插入图片描述

相关文章:

【树与二叉树】树与二叉树的概念及结构--详解介绍

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;数据结构 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 文章目录1.树概念及结构1.1 树…...

Spring Boot集成RocketMQ实现普通、延时、事务消息发送接收、PULL消费模式及开启ACL | Spring Cloud 30

一、前言 在前面我们通过以下章节对RocketMQ有了基础的了解&#xff1a; docker-compose 搭建RocketMQ 5.1.0 集群&#xff08;双主双从模式&#xff09; | Spring Cloud 28 docker-compose 搭建RocketMQ 5.1.0 集群开启ACL权限控制 | Spring Cloud 29 现在开始我们正式学习…...

人人都能看懂的Spring源码解析,Spring如何解决循环依赖

人人都能看懂的Spring源码解析&#xff0c;Spring如何解决循环依赖原理解析什么是循环依赖循环依赖会有什么问题&#xff1f;如何解决循环依赖问题的根本原因如何解决为什么需要三级缓存&#xff1f;Spring的三级缓存源码走读Spring的三级缓存提前暴露getSingleton方法总结往期…...

Linux上搭建Discuz论坛

一.准备工作 1.下载php*&#xff0c;mariadb-server 2.上传Discuz3.5压缩包并解压 二.搭建过程 基于redhat 9 版本和Discuz3.5&#xff0c;php8.0&#xff0c;mariadb10.5演示 一.准备工作 1.下载php*&#xff0c;mariadb-server [rootredhat9 aaa]# yum install -y php*…...

【蓝桥杯专题】 树状数组(C++ | 洛谷 | acwing | 蓝桥)

菜狗现在才开始备战蓝桥杯QAQ 文章目录【蓝桥杯专题】 &#xff08;C | 洛谷 | acwing | 蓝桥&#xff09;什么是线段数组??1264. 动态求连续区间和数星星线段树AcWing 1270. 数列区间最大值PPPPPPP【蓝桥杯专题】 &#xff08;C | 洛谷 | acwing | 蓝桥&#xff09; 什么是…...

QCefView编译配置(Windows-MSVC)(11)

QCefView编译配置&#xff08;Windows-MSVC&#xff09; 文章目录QCefView编译配置&#xff08;Windows-MSVC&#xff09;1、概述2、准备工作3、添加环境变量4、更换cef源码版本5、CMake构建6、Visual Studio编译7、安装编译后的文件8、验证编译结果更多精彩内容&#x1f449;个…...

Token原理

Q&#xff1a;分布式场景下如何生成token以及使用token的流程&#xff1a; 在分布式场景下&#xff0c;可以采用以下方式生成 token 和进行权限认证&#xff1a; 1. 生成 token&#xff1a; 使用JWT&#xff08;JSON Web Token&#xff09;生成 token。JWT 是一种基于 JSON …...

③【Java组】蓝桥杯省赛真题 持续更新中...

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ 蓝桥杯真题--持续更新中...一、错误票据题目描…...

linux实验之shell编程基础

这世间&#xff0c;青山灼灼&#xff0c;星光杳杳&#xff0c;秋风渐渐&#xff0c;晚风慢慢 shell编程基础熟悉shell编程的有关机制&#xff0c;如标准流。学习Linux环境变量设置文件及其内容/etc/profile/etc/bashrc/etc/environment~/.profile~/.bashrc熟悉编程有关基础命令…...

C语言小程序:通讯录(静态版)

哈喽各位老铁们&#xff0c;今天给大家带来一期通讯录的静态版本的实现&#xff0c;何为静态版本后面会做解释&#xff0c;话不多说&#xff0c;直接开始&#xff01;关于通讯录&#xff0c;其实也就是类似于我们手机上的通讯录一样&#xff0c;有着各种各样的功能&#xff0c;…...

写CSDN博客两年半的收获--总结篇

&#x1f468;‍&#x1f4bb;作者简介&#xff1a;练习时长两年半的java博主 &#x1f39f;️个人主页&#xff1a;君临๑ ps&#xff1a;点赞是免费的&#xff0c;却可以让写博客的作者开心好几天&#x1f60e; 不知不觉间&#xff0c;在csdn写博客也有两年半的时间了&#x…...

中科亿海微FPGA应用(一、点灯)

1.软件&#xff1a; https://download.csdn.net/download/weixin_41784968/87564071 需要申请license才能使用&#xff1a;软件试用申请_软件试用申请_中科亿海微电子科技&#xff08;苏州&#xff09;有限公司 2.开发板&#xff1a; 芯片EQ6HL45&#xff0c;42.5k LUT。 3…...

ElasticSearch - SpringBoot整合ES:实现搜索结果排序 sort

文章目录00. 数据准备01. Elasticsearch 默认的排序方式是什么&#xff1f;02. Elasticsearch 支持哪些排序方式&#xff1f;03. ElasticSearch 如何指定排序方式&#xff1f;04. ElasticSearch 如何按照相关性排序&#xff1f;05. ElasticSearch 查询结果如何不按照相关性排序…...

IDEA的全新UI可以在配置里启用了,快来试试吧!

刚看到IDEA官方昨天发了这样一条推&#xff1a;IDEA的新UI可以在2022.3版本上直接使用了&#xff01;开启方法如下&#xff1a;打开IDEA的Setting界面&#xff0c;在Appearance & Behavior下有个被标注为Beta标签的New UI菜单&#xff0c;具体如下图&#xff1a;勾选Enable…...

第九章 镜像架构和规划 - 备份处于活动状态时自动进行故障转移

文章目录第九章 镜像架构和规划 - 备份处于活动状态时自动进行故障转移备份处于活动状态时自动进行故障转移备份不活动时的自动故障转移对各种中断场景的镜像响应响应主要中断场景的自动故障转移第九章 镜像架构和规划 - 备份处于活动状态时自动进行故障转移 备份处于活动状态…...

Barra模型因子的构建及应用系列七之Liquidity因子

一、摘要 在前期的Barra模型系列文章中&#xff0c;我们构建了Size因子、Beta因子、Momentum因子、Residual Volatility因子、NonLinear Size因子和Book-to-Price因子&#xff0c;并分别创建了对应的单因子策略&#xff0c;其中Size因子和NonLinear Siz因子具有很强的收益能力…...

走进二叉树的世界 ———性质讲解

二叉树的性质和证明前言1.二叉树的概念和结构特殊的二叉树&#xff1a;二叉树的性质前言 本篇博客主要讲述的是有关二叉树的一些概念&#xff0c;性质以及部分性质的相关证明&#xff0c;如果大伙发现了啥错误&#xff0c;可以在评论区指出&#x1f618;&#x1f618; 1.二叉树…...

【SSM】Spring + SpringMVC +MyBatis 框架整合

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ SSM框架整合一、导入相关依赖二、配置web.xml文…...

【算法基础】一篇文章彻底弄懂Dijkstra算法|多图解+代码详解

博主简介&#xff1a;努力学习的大一在校计算机专业学生&#xff0c;热爱学习和创作。目前在学习和分享&#xff1a;算法、数据结构、Java等相关知识。博主主页&#xff1a; 是瑶瑶子啦所属专栏: 算法 &#xff1b;该专栏专注于蓝桥杯和ACM等算法竞赛&#x1f525;近期目标&…...

第二十三天01MySQL多表查询与事务

目录 1. 多表查询 1.1 概述 1.1.1 数据准备 1.1.2 介绍 1.1.3 分类 1.2 内连接 1.2.1 语法 1.2.2 案例演示 1.3 外连接 1.3.1 语法 1.3.2 案例演示 1.4 子查询 1.4.1 介绍 1.4.2 标量子查询 1.4.3 列子查询 1.4.4 行子查询 1.4.5 表子查询 1.5 案例 1.5.1 介…...

TCP协议详解

1.TCP的准备条件在古代的时候&#xff0c;古人们经常写书信进行交流&#xff0c;写书信的前提是你要知道这份信是要寄给谁在网络中&#xff0c;我们通过ip端口号找对目标对象&#xff0c;但是现在网站一般会对ip端口注册一个域名&#xff0c;所以我们一般就是对域名进行查找&am…...

Activiti7与Spring、Spring Boot整合开发

Activiti整合Spring 一、Activiti与Spring整合开发 1.1 Activiti与Spring整合的配置 1)、在pom.xml文件引入坐标 如下 <properties><slf4j.version>1.6.6</slf4j.version><log4j.version>1.2.12</log4j.version> </properties> <d…...

基于SpringBoot实现冬奥会运动会科普平台【源码+论文】

基于SpringBoot实现冬奥会科普平台演示开发语言&#xff1a;Java 框架&#xff1a;springboot JDK版本&#xff1a;JDK1.8 服务器&#xff1a;tomcat7 数据库&#xff1a;mysql 5.7 数据库工具&#xff1a;Navicat11 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#…...

一文吃透SpringBoot整合mybatis-plus(保姆式教程)

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…...

C++ primer plus(第六版)编程练习答案 第4章 复合类型

一、程序清单 arrayone.cpp // arrayone.cpp -- small arrays of integers #include <iostream> int main() {using namespace std;int yams[3]; // creates array with three elementsyams[0] = 7; // assign value to first elementyams[1] = 8;yams[2] = 6;i…...

Kafka源码分析之Producer(一)

总览 根据kafka的3.1.0的源码example模块进行分析&#xff0c;如下图所示&#xff0c;一般实例代码就是我们分析源码的入口。 可以将produce的发送主要流程概述如下&#xff1a; 拦截器对发送的消息拦截处理&#xff1b; 获取元数据信息&#xff1b; 序列化处理&#xff1b;…...

springboot校友社交系统

050-springboot校友社交系统演示录像开发语言&#xff1a;Java 框架&#xff1a;springboot JDK版本&#xff1a;JDK1.8 服务器&#xff1a;tomcat7 数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09; 数据库工具&#xff1a;Navicat11 开发软件&#xff1a;e…...

python flask项目部署

flask上传服务器pyhon安装下载Anacondasudo wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh可根据需要安装对应的版本https://repo.anaconda.com/archive/解压anaconda压缩包bash Anaconda3-5.3.1-Linux-x86_64.sh解压过程中会…...

常见排序算法(C语言实现)

文章目录排序介绍插入排序直接插入排序希尔排序选择排序选择排序堆排序交换排序冒泡排序快速排序递归实现Hoare版本挖坑法前后指针版本非递归实现Hoare版本挖坑法前后指针版本快排的优化三值取中小区间优化归并排序递归实现非递归实现计数排序排序算法复杂度及稳定性分析不同算…...

基于jsp+ssm+springboot的小区物业管理系统【设计+论文+源码】

摘 要随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势&#xff1b;对于小区物业管理系统当然也不能排除在外&#xff0c;随着网络技术的不断成熟&#xff0c;带动了小区物业管理系统&#xff0c;它彻底改变了过去…...

wordpress 自定义模版/艾滋病多长时间能查出来

5.26——工作记录前言过程总结重点前言 目标&#xff1a;1.准备查询的基础sql 2.查询页面&#xff0c; 3.点击设备编码按钮的显示 4.图片 过程 deviceStatusPerceptionEventInfoCommon.jsp <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &…...

wordpress伪静态linux/今日新闻国际最新消息

中国建筑业在国民经济和社会发展中的作用日益增强&#xff0c;建筑行业发展速度一直在不断加快&#xff0c;为了进一步推动中国建筑业行业的快速平稳发展&#xff0c;完善中国建筑业行业产业链&#xff0c;政府颁布一系列措施推动中国该行业的发展&#xff0c;同时市场发展对建…...

广州设计公司网站/品牌形象推广

2017全国计算机等级考试一级WPS office考试大纲NCRE(WPS Office)是全国计算机等级考试体系(NCRE)的入门级。下面是YJBYS小编整理的2017全国计算机等级考试一级WPS office考试大纲&#xff0c;希望对你有帮助&#xff01;考试大纲&#xff1a;1.具有使用微型计算机的基础知识(包…...

网络营销设计/外链seo推广

1. 用top命令找到CPU占用率高的java进程pid&#xff0c;或者ps -aux|grep java查看所有java进程的pid。2.假设出问题的进程pid是1000&#xff0c;用top -H -p 1000查看该进程下线程CPU占用率&#xff0c;或者用ps -mp 1000 -o THREAD,tid,time | sort -rn查看。3.假设查得耗时线…...

哪里有做php网站免费教程/网站推广沈阳

Hexo更改主题后启动服务器&#xff0c;界面显如下字符: extends includes/layout.pug block content include includes/recent-posts.pug include includes/partial 解决方案: 执行如下命令 npm install --save hexo-renderer-jade hexo-generator-feed hexo-generator-sit…...

电脑版 做网站尺寸/最新新闻热点事件2024

USB&#xff08;Universal Serial BUS&#xff0c;通用串行总线&#xff09;协议规定&#xff0c;所有的USB设备都有VID&#xff08;Vendor ID&#xff0c;供应商识别码&#xff09;和PID&#xff08;Product ID&#xff0c;产品识别码&#xff09;。VID由供应商向USB-IF&#…...