二叉树

1、概念:
二叉树是由n(n>=0)个结点组成的有序集合,集合或者为空,或者是由一个根节点加上两棵分别称为左子树和右子树的、互不相交的二叉树组成。
2、性质:
二叉树中,第 i 层最多有 2i-1 个结点。
如果二叉树的深度为 K,那么此二叉树最多有 2K-1 个结点。
二叉树中,终端结点数(叶子结点数)为 n0,度为 2 的结点数为 n2,则 n0=n2+1。
对于一个二叉树来说,除了度为 0 的叶子结点和度为 2 的结点,剩下的就是度为 1 的结点(设为 n1),那么总结点 n=n0+n1+n2。
同时,对于每一个结点来说都是由其父结点分支表示的,假设树中分枝数为 B,那么总结点数 n=B+1。而分枝数是可以通过 n1 和 n2 表示的,即 B=n1+2n2。所以,n 用另外一种方式表示为 n=n1+2n2+1。
两种方式得到的 n 值组成一个方程组,就可以得出 n0=n2+1。

二叉树类型

1、满二叉树
如果二叉树中所有分支结点的度数都为2,并且叶子结点都在统一层次上,则二叉树为满二叉树。
在这里插入图片描述

2、完全二叉树
如果一棵具有n个结点的高度为k的二叉树,树的每个结点都与高度为k的满二叉树中编号为1——n的结点一一对应,则二叉树为完全二叉树。
完全二叉树的特性:
A、同样结点数的二叉树,完全二叉树的高度最小
B、完全二叉树的叶子结点仅出现在最下边两层,并且最底层的叶子结点一定出现在左边,倒数第二层的叶子结点一定出现在右边。
C、完全二叉树中度为1的结点只有左孩子。
在这里插入图片描述
3、扩充二叉树

扩充二叉树是对已有二叉树的扩充,扩充后的二叉树的节点都变为度数为2的分支节点。也就是说,如果原节点的度数为2,则不变,度数为1,则增加一个分支,度数为0的叶子节点则增加两个分支。
在这里插入图片描述
4、平衡二叉树

又叫二叉排序树,简单而言就是左子树上所有节点的值均小于根节点的值,而右子树上所有结点的值均大于根节点的值,左小右大,并不是乱序,因此得名二叉排序树。
在这里插入图片描述

二叉树操作

1、 二叉树的存储结构

在这里插入图片描述
二叉树结点包含四个固定的成员:结点的数据域、指向父结点的指针域、指向左子结点的指针域、指向右子结点的指针域。结点的数据域、指向父结点的指针域从TreeNode模板类继承而来。

二叉树的存储方法主要有两种:链式存储法和线性存储法,它们分别对应着链表和数组。完全二叉树最好用数组存放,因为数组下标和父子节点之间存在着完美的对应关系,而且也能够尽最大可能的节省内存。

我们把根节点储存在下标为i=1的位置,那么左子节点储存在2i=2的位置,右子节点储存在下标为2i+1=2的位置。依此类推,完成树的存储。借助下标运算,我们可以很轻松的从父节点跳转到左子节点和右子节点或者从任意一个子节点找到它的父节点。如果X的位置为i,则它的两个子节点的下标分别为2i和2i+1,它的父节点的位置为i/2(这里结果向下取整)。

相比用数组存储数据,链式存储法则相应的更加灵活,我们使用自定义类型Node来表示每一个节点

class Node{int data;Node left,right;
}

每个节点都是一个Node对象,它包含我们所需要存储的数据,指向左子节点的引用,指向右子节点的引用,就像链表一样将整个树串起来。如果该节点没有左子节点,则Node.leftnull或者Node.rightnull,如图:
在这里插入图片描述

2、二叉树的遍历

二叉树的遍历有三种方法:前序遍历,中序遍历和后序遍历。

  • 前序遍历:
    前序遍历过程是:访问根结点–>先序遍历左子树–>先序遍历右子树

  • 中序遍历:
    对于树中的任意节点来说,先打印它的左子树,然后再打印它本身,最后打印它的右子树。具体的代码是用递归实现的,比较容易理解。

public void inOrder(Node root){if(root==null) return;inOrder(root.left);System.out.println(root.data);inOrder(root.right);
}
  • 后续遍历
    后序遍历过程是:后序遍历左子树–>后序遍历右子树–>访问根结点

3、二叉树的数据操作

数据表示:
完全等同于二叉树的链式存储法,我们定义一个节点类Node来表示二叉查找树上的一个节点,每个节点含有一个键,一个值,一个左链接,一个有链接。其中键和值是为了储存和查找,一般来说,给定键,我们能够快速的找到它所对应的值。

private class Node{private int key;//键private String value;//值,我这里把数据设为String,为了和key区分开private Node left,right;//指向子树的链接public Node(int key,String value);//Java中的构造函数
}

数据查询:
查找操作接受一个键值(key),返回该键值对应的值(value),如果找不到就返回 null。大致思路是:如果树是空的,则查找未命中,返回null;如果被查找的键和根节点的键相等,查找命中,返回根节点对应的值;如果被查找的键较小,则在左子树中继续查找;如果被查找的键较大,则在右子树中继续查找。我们用递归来实现这个操作,具体的代码如下:

public String find(int key){return find(root,key);
}
private String find(Node x,int key){//在以x为根结点的子树中查找并返回键key所对应的值//如果找不到,就返回nullif(x==null) return null;if(key<x.key) return find(x.left,key);else if(key>x.left) return find(x.right,key);else return x.value;
}
// 注意这里用了两个方法,一个私有一个公开,私有的用来递归,公开的对外开放

插入数据:
我们首先判断根节点是不是空节点,如果是空节点,就直接创建一个新的Node对象作为根节点即可;如果根节点非空,就通过while循环以及p.key和key的大小比较不断向下寻找。循环结束时肯定会找到 一个空位置,这时我们就创建一个新的Node对象并把它接在这里。当然还有一种情况,如果p.key==key,就更新这个键键对应的值,结束。
实现方法一(非递归实现):

public void insert(int key,String value) {//如果根节点为空节点if (root == null) {root = new Node(key,value);return;}//根节点不是空节点Node p = root;while (p != null) {if (key > p.key) { //向右走if (p.right == null) {p.right = new Node(key,value);return;}p = p.right;} else if { // key < p.key,向左走if (p.left == null) {p.left = new Node(key,value);return;}p = p.left;}else p.value=value;//如果原来树中就含有value键,则更新它的值}}

实现方法二(递归实现):

public void insert(int key,String value){root=insert(root,key,value);
}
private Node insert(Node x,int key,String value){//如果key存在于以x为根节点的子树中则更新它的值;//如果不在就创建新节点插入到合适的位置;if(x==null) return new Node(key,value);if(key<x.key) x.left=insert(x.left,key,value);else if(key>x.key) x.right=insert(x.right,key,value);else x.value=value;return x;
}

查找最大值和最小值
根据二叉查找树的定义,最小值就是最左边的元素,直接从根节点一直向左查找即可。它也有两种实现方式,具体的代码如下:
实现一(递归实现)

public int min(){return min(root).value;
}
private Node min(Node x){if(x.left == null) return x;return min(x.left);
}

实现二(非递归实现)

public int min(){if(root==null) return -1; //表示不存在最小值Node x=root;//沿着左子树一直深入搜索下去,直到遇到左子树为空的节点,此时当前节点为最小值while(x.left!=null) x = x.left;return x.key;
}

查找前驱节点和后继节点
前驱节点指的是小于该键的最大键,后继节点指的是大于该键的最小键。你可以结合中序遍历理解,通过中序遍历,在得到的序列中位于该点左侧的就是前驱节点,右侧的就是后驱节点。

  • 前驱节点
  1. 若一个节点有左子树,那么该节点的前驱节点是其左子树中最大的节点(也就是左子树中最右边的那个节点)
  2. 若一个节点没有左子树,那么判断该节点和其父节点的关系
    2.1 若该节点是其父节点的右子节点,那么该节点的前驱节点即为其父节点。
    2.2 若该节点是其父节点的左子节点,那么需要沿着其父亲节点一直向树的顶端寻找,直到找到一个节点P,P节点是其父节点Q的右子节点,那么Q就是该节点的后继节点

寻址代码如下:

public int get_prenode(int key){if (root==null)return -1;//-1表示找不到给定的节点if (root.key==key)return -1;Node p = root;Node pp = null;Node  first_parent=null;while (p != null) {if (key>p.key) {pp = p;first_parent=p;p = p.right;} else if (key<p.key) {pp = p; p = p.left;} else {break;}}if(p==null) return -1;else if(p.left!=null) return max(p.left).key;//对应了第1种情况,如果左子树不为空,则前驱一定是左子树的最大值,即小于p的最大值(左子树的值都小于p节点)//以下是左子树为空的情况2.1else if(pp.right==p) return pp.key;//以下是左子树为空的情况2.2else if(pp.left==p) return first_parent.key;return -1;}

向上取整和向下取整

向上取整是指大于等于该键的最小键,向下取整是指小于等于该键的最小值。
向下取整与前驱后继节点的区别在于查找前驱后继节点对应的参数是树中的某一个节点键,而向下取整则允许接受任意的键作为参数,另一方面,向下取整可以包含等于自己的键,是小于等于;

删除操作
1.如果要删除的节点没有子节点,此时的操作时十分容易的,我们只需要将父节点中指向该节点的链接设置为null就可以了。
2.如果要删除的节点只有一个子节点(只有左子节点或只有右子节点),这种情况也不复杂。我们只需要更新父节点中的指向待删除结点的链接即可,让它指向待删除结点的子节点即可。
3.如果要删除的节点有两个子节点,这时就变得复杂了。你听我仔细描述一下这个过程:我们需要找到这个节点的右子树上的最小结点【记为H】(因为它没有左子节点),把【H】替换到我们计划删除的节点上;然后,再删除这个最小的节点【H】(因为它没有左子节点,所以可以转化成之前的两种情况之一),而且,你会发现,二叉查找树的性质被完美的保留了下来
具体代码:

public void delete(int key){//如果找到键为key的结点,就将它删除,找不到不做处理Node p=root;//p指向需要删除的结点,这里初始化为根节点Node pp=null;//pp记录的是p的父节点//通过while循环查找Key结点while(p!=null&&p.key!=Key){pp=p;if(Key>p.Key) p=p.right;else p=p.left;}if(p==null) return;//没有找到//情况一:要删除的结点有两个子结点if(p.left!=null&&p.right!=null){//查找右子树的最小结点Node minP=p.right;//minP是右子树的最小结点Node minPP=p;//minPP表示minP的父结点while(minP.left!=null){minPP=minP;minP=minP.left;}p.Key=minP.Key;p.val=minP.val;//替换p(将被删除的结点)的键和值//转化,以下问题只需要将minP删除即可//因为minP作为右子树最小的结点,肯定没有左子结点,可以转化为情况二处理p=minP;//使p指向右子树的最小结点pp=minPP;//使被删除结点的父结点指向右子树最小结点的父结点}//情况二:待删除结点是叶子结点(即没有子结点)或者仅有一个子结点Node child;//p的子结点if(p.left!=null) child=p.left;else if(p.right!=null) child=p.right;else child=null;//执行删除操作if(pp==null) root=child;//删除的是根结点else if(pp.left==p) pp.left=child;else pp.right=child;}

引用:https://maimai.cn/article/detail?fid=1502329788&efid=4oPFBA_9fa_8HpwLXZLrVQ&use_rn=1

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

相关文章

  1. java框架学习——SpringMVC常用方法使用详细

    上篇博客中详细介绍了搭建环境的步骤,本篇博客基于上篇博客的基础上实现一些常用的方法。(依赖包也使用上篇博客中的依赖),并创建本次需要的文件。 项目结构创建完成后如下图:一.编写实体类和控制器以及utils中的代码 1.实体类代码 ①Account.java中代码如下: package cn…...

    2024/5/3 18:09:34
  2. JAVA - ThreadLocal 相关小结

    ThreadLocalThreadLocal称为线程局部变量。每个线程独有的一块ThreadLocalMap空间,用来存储数据,不同线程间的ThreadLocalMap中数据是隔离的。 ThreadLocalMap是个数组结构,由若干个Entry元素组成,初始大小为16。 一个Entry中 包括Key 和Value两部分。Key为弱引用类型,存储…...

    2024/4/29 14:45:41
  3. CSS入门 day01

    CSS 入门 day01 css 一、什么是css? css是层叠样式表,是一个用于修饰文档的语言 二、css语法 1.属性名和属性值之间用“:”隔开 多对属性用“;”隔开 最后一对属性可以不加“;” 2.速记写法(简写形式) border:1px solid red border-width:1px border-top-width border-…...

    2024/4/30 22:47:47
  4. Junit 4,Juit5自动化脚本测试,单元测试实例输出

    找识货的私活团队....

    2024/5/1 1:33:12
  5. Redis详解(十八)------ Redis布隆过滤器

    1、布隆过滤器使用场景比如有如下几个需求:①、原本有10亿个号码,现在又来了10万个号码,要快速准确判断这10万个号码是否在10亿个号码库中?解决办法一:将10亿个号码存入数据库中,进行数据库查询,准确性有了,但是速度会比较慢。解决办法二:将10亿号码放入内存中,比如R…...

    2024/5/3 18:26:04
  6. 第16章 Linux计划任务与日志管理

    创建一次性计划任务当前时间1分后执行 echo aaa,查看计划任务at 16:10 echo aaaatq查看和删除将要执行的计划任务at -lat -c 任务编号ls /var/spool/atatrm 任务编号at计划任务时间写法再某天的下午8点 at 8:00pm 2020-10-1再10分钟过后执行 at now +10min明天下午5点执行 at 1…...

    2024/4/25 12:26:34
  7. python Task6 函数与Lambda表达式

    函数与Lambda表达式 1. 函数 还记得 Python 里面“万物皆对象”么?Python 把函数也当成对象,可以从另一个函数中返回出来而去构建高阶函数,比如:参数是函数 返回值是函数函数的定义函数以def关键词开头,后接函数名和圆括号()。 函数执行的代码以冒号起始,并且缩进。 retu…...

    2024/5/3 0:49:26
  8. python3爬虫笔记

    什么是爬虫? **请求网站并提取**数据的 **自动化**程序 爬虫的基本流程发起请求通过HTTP库向目标站点发起请求,即发送一个Request,请求可以包含额外的headers等信息,等待服务器响应获取响应内容如果服务器能正常响应,会得到一个Response,Response的内容便是索要获取的页面…...

    2024/5/3 0:55:17
  9. css3伸缩布局(附实例、图解)

    目录justify-content 调整主轴对齐(水平) align-items 调整侧轴对齐(垂直)单行比较多 flex-wrap控制是否换行 flex-flow是flex-direction、flex-wrap的简写形式 align-content堆栈(由flex-wrap产生独立行)对齐 order控制子盒子的排列顺序正文 伸缩布局用法: 1,给父盒子…...

    2024/5/2 5:38:34
  10. python的各种推导式(列表推导式、字典推导式、集合推导式)

    推导式comprehensions(又称解析式),是Python的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据序列的结构体。 共有三种推导,在Python2和3中都有支持:很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。…...

    2024/5/2 14:23:48
  11. 解决合并单元格筛选时只出现首行的小技巧

    前言 Excel小窍门,让办公更便捷。 情景 合并单元格后,单一筛选时只会显示对应的第一行数据。原因 Excel筛选单元格时,遇到不连续区域(即中间有空白单元格)会识别不到后续内容; 合并单元格后,除首行外,其余行的值会被自动清空,从而导致在筛选单元格的时候,只会显示合并…...

    2024/5/2 12:41:59
  12. 【数据结构】交换排序(冒泡排序,快速排序)

    冒泡排序 稳定性: 稳定 最好时间复杂度: O(n)基本有序的话不用交换直接比较一遍元素就好了 最坏时间复杂度: O(n^2) 空间复杂度: O(1)void Bubble_Sort() {for (int i = N-1; i >= 0; i--) {int flag = 0;for (int j = 1; j < i; j++) {if (A[j] > A[j…...

    2024/5/2 2:25:04
  13. 接口(API)测试

    接口测试 什么是接口 接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。 接口的本质及其工作原理 接口可以简单的理解是URL,工作原理就会说URL通过get或者p…...

    2024/5/2 23:24:01
  14. 基于pytorch的segnet实现,使用camvid数据集训练

    程序结构基本与https://blog.csdn.net/haohulala/article/details/107660273这篇文章相似,有什么问题也可以参考这篇文章。 import torch from torch import nn import torch.nn.functional as f import torchvision import torchvision.transforms as tfs from torch.utils.d…...

    2024/5/2 14:23:38
  15. 微积分复习(四)多元函数积分学

    二重积分二重积分(f(x,y)f(x,y)f(x,y) 在 σ\sigmaσ 上的黎曼积分) ∬σf(x,y)dσ=lim⁡λ→0∑i=1nf(ξi,ηi)Δσi\displaystyle\iint_{\sigma}{f(x,y)\mathrm{d}\sigma}=\displaystyle\lim_{\lambda \to 0}{\displaystyle\sum_{i=1}^{n}{f(\xi_i,\eta_i)\Delta \sigma_i…...

    2024/5/2 16:40:59
  16. Python实现微信读书辅助工具

    [TOC]##项目来源这个有意思的项目是我从GitHub上找来的,起因是在不久前微信读书突然就设置了非会员书架数目上限,我总想做点什么来表达我的不满,想到可否用爬虫来获取某一本书的内容, 但是我技术有限,我使用F12进行检查,发现微信读书的网页版中的内容居然是canvas元素结合…...

    2024/5/3 1:43:31
  17. Java Spring里getBean方法的实现

    位于DefaultListableBeanFactory:getBeanAbstractBeanFactory.java: doGetBeanBeans.xml里如无特殊声明,定义的bean默认都是singleton,故执行310行的getSingleton:虽然方法名称为get,但是注释写得很清楚,如果Bean尚未被注册,就register a new one:准备创建名为dataSource…...

    2024/5/2 19:27:54
  18. Ubuntu 13.10设置root自动登录 Ubuntu 12以后版本设置root自动登录 开启root登录 Ubuntu系统root自动登录设置

    1、开启Ubuntu的root账户启动终端(搜索term 或者快捷键Ctrl+Alt+T可以调出),敲入命令 sudo passwd root,输入自己用户密码,和给root超级账户设置的密码(可随意设置,一般设置为123456)。2、设置root账户自动登录敲命令sudo gedit /etc/lightdm/lightdm.conf , 修改系统自动…...

    2024/5/3 0:29:20
  19. R语言:探究sample()和runif()结果在不同R版本下的一致性

    在R语言中,sample()常被用于随机抽样,runif()用于生成均匀分布随机数,考虑到抽样及随机数生成结果的可再现性,需使用set.seed()设定随机种子。那么,sample()和runif()不同系统、R版本的结果是否可能不一致呢?当然可能不一致,正因出现了不一致,所以才对这个问题进行讨论…...

    2024/5/3 1:39:17
  20. mybatis深入理解之#与$区别(十)

    mybatis 中使用 Mapper.xml里面的配置进行 sql 查询,经常需要动态传递参数,例如我们需要根据用户的姓名来筛选用户时,sql 如下: select * from user where name = "Jack";上述 sql 中,我们希望 name 后的参数 “Jack” 是动态可变的,即不同的时刻根据不同的姓名…...

    2024/5/3 1:44:23

最新文章

  1. STM32——中断篇

    技术笔记&#xff01; 1 中断相关概念 1.1 什么是中断&#xff1f; 中断是单片机正在执行程序时&#xff0c;由于内部或外部事件的触发&#xff0c;打断当前程序&#xff0c;转而去处理这一事件&#xff0c;当处理完成后再回到原来被打断的地方继续执行原程序的过程。 在AR…...

    2024/5/3 20:39:13
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. CTK插件框架学习-事件监听(04)

    CTK插件框架学习-插件注册调用(03)https://mp.csdn.net/mp_blog/creation/editor/136989802 一、主要流程 发送者注册消息事件接收者订阅消息事件接收者相应消息事件 事件监听比插件接口调用耦合性更弱&#xff0c;事件由框架维护&#xff0c;不需要指定发送方和接收方 二、…...

    2024/5/1 10:29:55
  4. ElasticSearch的DSL查询

    ElasticSearch的DSL查询 准备工作 创建测试方法&#xff0c;初始化测试结构。 import org.apache.http.HttpHost; import org.apache.lucene.search.TotalHits; import org.elasticsearch.action.search.SearchRequest; import org.elasticsearch.action.search.SearchRespo…...

    2024/5/2 7:02:52
  5. 416. 分割等和子集问题(动态规划)

    题目 题解 class Solution:def canPartition(self, nums: List[int]) -> bool:# badcaseif not nums:return True# 不能被2整除if sum(nums) % 2 ! 0:return False# 状态定义&#xff1a;dp[i][j]表示当背包容量为j&#xff0c;用前i个物品是否正好可以将背包填满&#xff…...

    2024/5/3 11:50:27
  6. 【Java】ExcelWriter自适应宽度工具类(支持中文)

    工具类 import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellType; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet;/*** Excel工具类** author xiaoming* date 2023/11/17 10:40*/ public class ExcelUti…...

    2024/5/2 16:04:58
  7. Spring cloud负载均衡@LoadBalanced LoadBalancerClient

    LoadBalance vs Ribbon 由于Spring cloud2020之后移除了Ribbon&#xff0c;直接使用Spring Cloud LoadBalancer作为客户端负载均衡组件&#xff0c;我们讨论Spring负载均衡以Spring Cloud2020之后版本为主&#xff0c;学习Spring Cloud LoadBalance&#xff0c;暂不讨论Ribbon…...

    2024/5/2 23:55:17
  8. TSINGSEE青犀AI智能分析+视频监控工业园区周界安全防范方案

    一、背景需求分析 在工业产业园、化工园或生产制造园区中&#xff0c;周界防范意义重大&#xff0c;对园区的安全起到重要的作用。常规的安防方式是采用人员巡查&#xff0c;人力投入成本大而且效率低。周界一旦被破坏或入侵&#xff0c;会影响园区人员和资产安全&#xff0c;…...

    2024/5/3 16:00:51
  9. VB.net WebBrowser网页元素抓取分析方法

    在用WebBrowser编程实现网页操作自动化时&#xff0c;常要分析网页Html&#xff0c;例如网页在加载数据时&#xff0c;常会显示“系统处理中&#xff0c;请稍候..”&#xff0c;我们需要在数据加载完成后才能继续下一步操作&#xff0c;如何抓取这个信息的网页html元素变化&…...

    2024/5/3 11:10:49
  10. 【Objective-C】Objective-C汇总

    方法定义 参考&#xff1a;https://www.yiibai.com/objective_c/objective_c_functions.html Objective-C编程语言中方法定义的一般形式如下 - (return_type) method_name:( argumentType1 )argumentName1 joiningArgument2:( argumentType2 )argumentName2 ... joiningArgu…...

    2024/5/2 6:03:07
  11. 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】

    &#x1f468;‍&#x1f4bb;博客主页&#xff1a;花无缺 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】&#x1f30f;题目描述&#x1f30f;输入格…...

    2024/5/2 9:47:30
  12. 【ES6.0】- 扩展运算符(...)

    【ES6.0】- 扩展运算符... 文章目录 【ES6.0】- 扩展运算符...一、概述二、拷贝数组对象三、合并操作四、参数传递五、数组去重六、字符串转字符数组七、NodeList转数组八、解构变量九、打印日志十、总结 一、概述 **扩展运算符(...)**允许一个表达式在期望多个参数&#xff0…...

    2024/5/2 23:47:43
  13. 摩根看好的前智能硬件头部品牌双11交易数据极度异常!——是模式创新还是饮鸩止渴?

    文 | 螳螂观察 作者 | 李燃 双11狂欢已落下帷幕&#xff0c;各大品牌纷纷晒出优异的成绩单&#xff0c;摩根士丹利投资的智能硬件头部品牌凯迪仕也不例外。然而有爆料称&#xff0c;在自媒体平台发布霸榜各大榜单喜讯的凯迪仕智能锁&#xff0c;多个平台数据都表现出极度异常…...

    2024/5/3 13:26:06
  14. Go语言常用命令详解(二)

    文章目录 前言常用命令go bug示例参数说明 go doc示例参数说明 go env示例 go fix示例 go fmt示例 go generate示例 总结写在最后 前言 接着上一篇继续介绍Go语言的常用命令 常用命令 以下是一些常用的Go命令&#xff0c;这些命令可以帮助您在Go开发中进行编译、测试、运行和…...

    2024/5/3 1:55:15
  15. 用欧拉路径判断图同构推出reverse合法性:1116T4

    http://cplusoj.com/d/senior/p/SS231116D 假设我们要把 a a a 变成 b b b&#xff0c;我们在 a i a_i ai​ 和 a i 1 a_{i1} ai1​ 之间连边&#xff0c; b b b 同理&#xff0c;则 a a a 能变成 b b b 的充要条件是两图 A , B A,B A,B 同构。 必要性显然&#xff0…...

    2024/5/2 9:47:28
  16. 【NGINX--1】基础知识

    1、在 Debian/Ubuntu 上安装 NGINX 在 Debian 或 Ubuntu 机器上安装 NGINX 开源版。 更新已配置源的软件包信息&#xff0c;并安装一些有助于配置官方 NGINX 软件包仓库的软件包&#xff1a; apt-get update apt install -y curl gnupg2 ca-certificates lsb-release debian-…...

    2024/5/3 16:23:03
  17. Hive默认分割符、存储格式与数据压缩

    目录 1、Hive默认分割符2、Hive存储格式3、Hive数据压缩 1、Hive默认分割符 Hive创建表时指定的行受限&#xff08;ROW FORMAT&#xff09;配置标准HQL为&#xff1a; ... ROW FORMAT DELIMITED FIELDS TERMINATED BY \u0001 COLLECTION ITEMS TERMINATED BY , MAP KEYS TERMI…...

    2024/5/3 1:55:09
  18. 【论文阅读】MAG:一种用于航天器遥测数据中有效异常检测的新方法

    文章目录 摘要1 引言2 问题描述3 拟议框架4 所提出方法的细节A.数据预处理B.变量相关分析C.MAG模型D.异常分数 5 实验A.数据集和性能指标B.实验设置与平台C.结果和比较 6 结论 摘要 异常检测是保证航天器稳定性的关键。在航天器运行过程中&#xff0c;传感器和控制器产生大量周…...

    2024/5/2 8:37:00
  19. --max-old-space-size=8192报错

    vue项目运行时&#xff0c;如果经常运行慢&#xff0c;崩溃停止服务&#xff0c;报如下错误 FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 因为在 Node 中&#xff0c;通过JavaScript使用内存时只能使用部分内存&#xff08;64位系统&…...

    2024/5/3 14:57:24
  20. 基于深度学习的恶意软件检测

    恶意软件是指恶意软件犯罪者用来感染个人计算机或整个组织的网络的软件。 它利用目标系统漏洞&#xff0c;例如可以被劫持的合法软件&#xff08;例如浏览器或 Web 应用程序插件&#xff09;中的错误。 恶意软件渗透可能会造成灾难性的后果&#xff0c;包括数据被盗、勒索或网…...

    2024/5/2 9:47:25
  21. JS原型对象prototype

    让我简单的为大家介绍一下原型对象prototype吧&#xff01; 使用原型实现方法共享 1.构造函数通过原型分配的函数是所有对象所 共享的。 2.JavaScript 规定&#xff0c;每一个构造函数都有一个 prototype 属性&#xff0c;指向另一个对象&#xff0c;所以我们也称为原型对象…...

    2024/5/2 23:47:16
  22. C++中只能有一个实例的单例类

    C中只能有一个实例的单例类 前面讨论的 President 类很不错&#xff0c;但存在一个缺陷&#xff1a;无法禁止通过实例化多个对象来创建多名总统&#xff1a; President One, Two, Three; 由于复制构造函数是私有的&#xff0c;其中每个对象都是不可复制的&#xff0c;但您的目…...

    2024/5/2 18:46:52
  23. python django 小程序图书借阅源码

    开发工具&#xff1a; PyCharm&#xff0c;mysql5.7&#xff0c;微信开发者工具 技术说明&#xff1a; python django html 小程序 功能介绍&#xff1a; 用户端&#xff1a; 登录注册&#xff08;含授权登录&#xff09; 首页显示搜索图书&#xff0c;轮播图&#xff0…...

    2024/5/3 7:43:42
  24. 电子学会C/C++编程等级考试2022年03月(一级)真题解析

    C/C++等级考试(1~8级)全部真题・点这里 第1题:双精度浮点数的输入输出 输入一个双精度浮点数,保留8位小数,输出这个浮点数。 时间限制:1000 内存限制:65536输入 只有一行,一个双精度浮点数。输出 一行,保留8位小数的浮点数。样例输入 3.1415926535798932样例输出 3.1…...

    2024/5/3 1:54:59
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57