前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >判断一棵树是否是搜索二叉树

判断一棵树是否是搜索二叉树

作者头像
名字是乱打的
发布于 2022-05-13 01:51:01
发布于 2022-05-13 01:51:01
18500
代码可运行
举报
文章被收录于专栏:软件工程软件工程
运行总次数:0
代码可运行

搜索二叉树它是一种节点值之间具有一定数量级次序的二叉树,对于树中每个节点: 若其左子树存在,则其左子树中每个节点的值都不大于该节点值; 若其右子树存在,则其右子树中每个节点的值都不小于该节点值。

思想:

实际上只要树的中序遍历结果是升序的,那么其就是搜索二叉树

代码实现

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package com.algorithm.practice.tree;
import java.util.Stack;

public class SearchTreeJudge {
    public static class Node {
        public int value;
        public Node left;
        public Node right;
        public Node parent;

        public Node(int data) {
            this.value = data;
        }
    }
    public static boolean InOrderJudgeSearch(Node head){
        int falg=Integer.MIN_VALUE;
        if (head!=null){
            Stack<Node> stack=new Stack<>();
            while (!stack.isEmpty()||head!=null){
                if (head!=null){
                    stack.push(head);
                    head=head.left;
                }else {
                    head=stack.pop();
                    if (head.value>falg){
                        falg=head.value;
                    }else {
                        return false;
                    }
                    head=head.right;
                }
            }
        }
        return true;
    }
    public static void main(String[] args){
        Node head = new Node(4);
        head.left = new Node(3);
        head.right = new Node(8);
        head.left.left = new Node(2);
        head.left.right = new Node(4);
        head.left.left.left = new Node(1);
        head.right.left = new Node(7);
        head.right.left.left = new Node(6);
        head.right.right = new Node(10);
        head.right.right.left = new Node(9);
        head.right.right.right = new Node(11);
        System.out.println( InOrderJudgeSearch(head));
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
安装使用最新wordpress的最简单流程
基于 Ubuntu22.04,安装 mysql + php-fpm + wordpress + nginx 。
:Darwin
2023/08/23
3840
docker-compose快速搭建wordpress个人网站
先后用过wordpress、GHost搭建过个人博客,Wordpress让人诟病的是相比与GHost的轻量而庞大复杂框架,安装环境依赖复杂,配置繁琐,过程痛苦,升级版本更是糟心,所以长期依赖一直用GHost撑着心血来潮的博客。但是,wordpress对得起复杂架构的是她的普适性,博客是小试身手,各种论坛、企业门户、甚至电商平台也是轻松胜任;其android、ios的APP端入口更是方便随手拍个照片写个感想。docker技术发展,wordpress曾经麻烦的搭建过程就变的很简单。
flavorfan
2021/12/05
1.7K0
docker-compose快速搭建wordpress个人网站
Nginx服务配置篇·第二课:Wordpress部署安装
上一篇文章我们配置好Nginx以及PHP环境后,这一片就可以直接进行Wordpress的安装了,打造你的第一个博客网站。
我不是程序员110
2022/09/26
6.9K2
Nginx服务配置篇·第二课:Wordpress部署安装
通过 Ngnix 配置解决 WordPress 固定链接 404 问题
排查后原因是 Nginx 配置问题,期间还遇到跳转 https:// 无限死循环的问题,故记录正确完整 Nginx 配置。
轩辕镜像
2024/09/29
2720
如何在CentOS 7上使用OpenLiteSpeed安装WordPress
WordPress是目前世界上最受欢迎的内容管理系统(CMS)。它允许您在数据库后端轻松设置博客和网站,使用PHP执行脚本和处理动态内容。WordPress有一个庞大的在线社区支持,能够快速启动和运行网站。
丰一川
2018/10/10
2K0
如何在Debian 9上安装带LEMP的WordPress
WordPress是互联网上最受欢迎的CMS(内容管理系统)。它允许您使用PHP处理在MySQL后端之上轻松设置灵活的博客和网站。WordPress已经看到了令人难以置信的采用,是一个快速启动和运行网站的绝佳选择。设置完成后,几乎所有管理都可以通过Web前端完成。
小翼111
2018/11/20
1.4K1
基于 CentOS 搭建 WordPress 个人博客
LNMP 是 Linux、Nginx、MySQL 和 PHP 的缩写,是 WordPress 博客系统依赖的基础运行环境。我们先来准备 LNMP 环境
许都博客
2021/06/16
1.2K0
NextCloud私有云盘安装部署记录
描述:由于个人家里的NAS以及公司团队对私有网盘的进行日常工作文件同步以及协同办公的需求,所以有了这篇文章,讲解记录从选项到安装以及同步使用等相关操作;
全栈工程师修炼指南
2022/09/29
26.9K0
NextCloud私有云盘安装部署记录
Laravel 开发和部署环境搭建
  近来趁着 Ubuntu 20.04 发行版的发布,在台式机上安装了桌面版体验了一下。不知道是因为笔者的台式机(2016年组装的,CPU 还在 Intel 第4代)有点过于陈旧了,还是最新发行版的安装要求变高了,安装完成后总觉得使用起来不是很顺手。用着用着就死机了,键盘和鼠标完全失效。而且原来在 Ubuntu 上的美化操作也不是很好使了,因此就尝试了 Linux Mint 20 发行版(基于 Ubuntu 20.04)。自从安装完成后,体验下来还是比较顺畅,能够成功安装搜狗中文输入法、字体、主题、其他常用软件。于是就萌生了在 Linux Mint 上搭建 Laravel 开发环境的想法。
zhonger
2022/10/28
1.7K0
【腾讯云的1001种玩法】新手教程:腾讯云CentOS7安装LNMP+wordpress
饶文津
2017/04/13
3.4K0
CentOS 7使用Nginx+MariaDB+PHP安装Nextcloud 13
在这篇文章中,我将向你展示如何在 CentOS 7 服务器中安装和配置最新版本的 Nextcloud 13。我会通过 Nginx 和 PHP7-FPM 来运行 Nextcloud,同时使用 MariaDB 做为数据库系统。
星哥玩云
2022/07/14
1.7K0
如何在Centos系统上安装Wordpress
WordPress是一个以PHP和MySQL为平台的自由开源的博客软件和内容管理系统。WordPress具有插件架构和模板系统。Alexa排行前100万的网站中有超过16.7%的网站使用WordPress。到了2011年8月,约22%的新网站采用了WordPress。WordPress是目前因特网上最流行的博客系统。它创建于2003年,并拥有超过20,000个插件来定制其功能。
信姜缘
2018/07/25
2.1K0
CentOS中WordPress博客系统安装之LNMP安装(一)
介绍 WordPress是一个以PHP和MySQL为平台的自由开源的博客软件和内容管理系统。WordPress具有插件架构和模板系统。截至2018年4月,排名前1000万的网站中超过30.6%使用WordPress。WordPress是最受欢迎的网站内容管理系统。全球有大约30%的网站都是使用WordPress架设网站的。 LNMP 一组开源软件简称,它们通常安装在一起以使服务器能够托管动态网站和 Web 应用程序。这个j简写实际上是一个首字母缩写词,它代表Linux 操作系统,带有Nginx Web 服务
玖柒的小窝
2021/10/21
5040
CentOS中WordPress博客系统安装之LNMP安装(一)
如何在 Ubuntu 20.04 上使用LEMP安装WordPress
WordPress 需要 Web 服务器、数据库和 PHP 才能正常运行。设置 LEMP 堆栈(Linux、Nginx、MySQL 和 PHP)可以满足所有这些要求。无需自己设置这些组件,您可以快速配置已经安装了 LEMP 堆栈的 Ubuntu 20.04 服务器、
小颖club
2022/04/11
9630
基础建站:Ubuntu 16.04下安装WordPress程序
WordPress.com是一个博客寄存服务站点,由Automattic公司所持有。2005年8月8日进行Beta测试,2005年11月21日向公众开放。它使用的是开源博客软件WordPress。
禹都一只猫olei
2018/08/02
7380
基础建站:Ubuntu 16.04下安装WordPress程序
使用 Docker 和 Traefik 搭建 WordPress(Nginx)
本文使用「署名 4.0 国际 (CC BY 4.0)」许可协议,欢迎转载、或重新修改使用,但需要注明来源。 署名 4.0 国际 (CC BY 4.0)
soulteary
2023/03/05
1.2K0
使用 Docker 和 Traefik 搭建 WordPress(Nginx)
WordPress 禁止访问网站核心 PHP 文件,提高安全性
WordPress 用的是 PHP 语言,禁止访客访问网站核心 PHP 文件能提高安全性。我们以 Nginx 的配置文件为例,来详细说明如何安全配置:禁用某些目录执行 PHP。
Yangsh888
2022/03/24
9890
Nginx服务配置篇·第三课:NextCloud部署安装
上一篇文章我们安装完Wordpress,基本上也就知道一个简单的网站的发布流程,这一篇就开始部署Nextcloud,打造你的第一个私人网盘。
我不是程序员110
2022/09/26
10.8K0
Nginx服务配置篇·第三课:NextCloud部署安装
CentOS7 搭建NextCloud私有云盘
由于公司需要安装了私有云盘,并且强制要求使用MySQL,我进行了编译安装,大多数文章安装在/目录下,由于/目录太小,我挂载了一块磁盘,安装在挂载磁盘上。后续还有数据安全等操作,以后会持续更新
星哥玩云
2022/07/24
20.7K0
CentOS7 搭建NextCloud私有云盘
如何在Debian 9上安装带LAMP的WordPress
WordPress是互联网上最受欢迎的CMS(内容管理系统)。它允许您使用PHP处理在MariaDB后端轻松设置灵活的博客和网站。WordPress已经看到了令人难以置信的采用,是一个快速启动和运行网站的绝佳选择。设置完成后,几乎所有管理都可以通过Web前端完成。
你在哪里
2018/11/15
3.6K1
推荐阅读
相关推荐
安装使用最新wordpress的最简单流程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验