LeetCode 104. 二叉树的最大深度 Maximum Dept
描述给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明:叶子节点是指没有子节点的节点。示例:给定二叉树[3,9,20,null,null,15,7],3/920/157返回它的最大深度3。解答直接递归,简单题intg_maxDep=0;intmax(inta,intb){returna>b?a:b;}intdfs(structTreeNode*root){
C语言数据结构(11)--使用链表描述子节点的普通树实现
数组描述子节点的缺点如果有这么一颗奇葩的树,大多数节点的孩子数为1-2个,但是有一个节点的孩子数是100个。因为我们使用数组描述子节点,所以描述子节点的数组得定义为structTreeNode*children[100];。也就是说,除了有一个充分利用了数组分配的空间,其他的都造成了极大浪费,毫无疑问不合理。使用链表描述孩子也是一个一维的集合,特点个数不确定,符合这种特点的数据结构就是链式线性表了
Spring Cloud Stream错误处理详解
TIPS本文基于SpringCloudGreenwichSR1,理论支持Finchley及更高版本。本节详细探讨SpringCloudStream的错误处理。应用处理局部处理【通用】配置:spring:cloud:stream:bindings:input:destination:my-destinationgroup:my-groupoutput:destination:my-destinati
Node.js mmysql客户端不支持认证协议引发的“ER_NOT_
mysql模块(项目地址为https://github.com/mysqljs/mysql)是一个开源的、JavaScript编写的MySQL驱动,可以在Node.js应用中来操作MySQL。但在使用过程中,出现了“ER_NOT_SUPPORTED_AUTH_MODE”问题。本文介绍了出现该问题的原因及解决方案。报错信息当我试图使用mysql模块来连接MySQL8时,出现了如下错误信息:D:wor
深入解构objc_msgSend函数的实现
阅读本文后你将会进一步了解Runtime的实现,享元设计模式的实践,内存数据存储优化,编译内存屏障,多线程无锁读写实现,垃圾回收等相关的技术点。objc_class(Class对象)结构简介熟悉OC语言的Runtime(运行时)机制以及对象方法调用机制的开发者都知道,所有OC方法调用在编译时都会转化为对C函数objc_msgSend的调用。/*下面的例子是在arm64体系下的函数调用实现,本文中如
Redis pipeline
关于Redispipeline为什么需要pipeline?Redis的工作过程是基于请求/响应模式的。正常情况下,客户端发送一个命令,等待Redis应答;Redis接收到命令,处理后应答。请求发出到响应的时间叫做往返时间,即RTT(RoundTimeTrip)。在这种情况下,如果需要执行大量的命令,就需要等待上一条命令应答后再执行。这中间不仅仅多了许多次RTT,而且还频繁的调用系统IO,发送网络请
04 同理心训练:怎样理解愤怒与恐惧
像愉悦和难受一样,愤怒和恐惧也是同生的一对感觉。如果说前者来自于被满足,后者则来自于被侵犯。被侵犯什么呢?对于动物来说,是自己的地盘被侵犯了。对于地铁上的小姑凉来说,是身体被侵犯了。对于一个国家来说,是领土被侵犯了。被侵犯有两种反应,愤怒或者恐惧。而决定被侵犯者采取哪一种反应的判断依据则是根据侵犯者的强大程度。敌人太强大了,敌人攻击了我们,我们会恐惧。敌人不如我们,敌人攻击了我们,我们会愤怒。本质
《Oracle comment on注释信息方法论》
更多精彩内容尽在leonarding.blog.51cto.com《Oraclecommenton注释信息方法论》引言:在DBA日常工作中写注释信息可能会经常有,但用Oracle命令来写和使用我想应该不是很多,其实Oracle给我们提供了非常丰富的语言表述语法,而我们日常使用的语法命令占30%~45%。其中OracleCommenton注释语法就是不常用的。下面来给大家揭秘一下OracleComm
[集群自动化一]3分钟装好k8s_HA-v1.13.0
原文链接Toinstallk8s_HA-1.13.0onCoreOSexternal-etcd.pngPrepare:download:coreos-k8s-v1.13.0.tgz-----k8s1.13.0'sdockerimage&kubelet/kubeadm/kubectl&dashboardha.tgz -----dockerimage:keepalived.tar/haproxy.ta
利用binlog2sql快速闪回误删除数据 - 别拿豆包不当干粮
各位兄弟们,好久不见了!最近一直忙于新书的创作,所以一直没有时间更新博客。不知道这段时间大家学习得怎么样,希望大家通过看我的文章给大家带来帮助。老张我也花费了大量时间录制一些数据库的视频课程,大家要是感兴趣,也可以去学习,不要错过啊!今儿抽出时间,给大家分享一篇利用binlog2sql闪回工具,来恢复误删除的数据。我们都知道binlog的作用是备份恢复和完成MySQL的主从复制功能。利用mysql
H5新标签(适合新手入门)
H5新标签文档类型设定documentHTML:sublime输入html:4sXHTML:sublime输入html:xtHTML5sublime输入html:5字符设定:HTML与XHTML中建议这样去写:HTML5的标签中建议这样去写常用新标签w3c手册中文官网: http://w3school.com.cn/header:定义文档的页眉头部nav:定义导航链接的部分footer:定义文档
如何在Windows上从源代码构建OpenJFX 8
所以你已经听到了这个消息。Oracle震惊世界,改变了Java和相关技术的支持路线图,发布周期等。但是,您的业务'JavaFX应用程序(及其依赖项)在OracleJDK8上运行。您喜欢稳定性,因为如果您不这样做,您的业务软件可能会失败,导致您花钱或更糟-让您破产和/或还是欠债那么这对OracleJDK/JavaFX8的商业用户意味着什么呢?两件事情:我们多年来一直受到的第一次免费的公共支持,就像一
Spring Boot 工程集成全局唯一ID生成器 Vesta
本文内容脑图如下:文章共760字,阅读大约需要2分钟!概述在前一篇文章《SpringBoot工程集成全局唯一ID生成器UidGenerator》中给大家推荐了一款由百度开发的基于Snowflake算法实现的全局唯一ID生成器UidGenerator,而本文则给大家再度推荐一款优秀的全局唯一ID生成器,名叫Vesta。Vesta是艳鹏大佬的开源作品,基于Java开发,其体验地址在此。Vesta是一款
Android P 新特性与适配
近日,谷歌向全球正式发布Android9Pie,新版Android利用人工智能技术,让您的手机更加智能、简洁与人性化。下面简要介绍下新特性:以机器学习为核心,打造更为智能的手机Android9赋予手机强大的学习能力:系统能够根据用户在使用过程中展露的习惯与偏好,进行自我学习与适应——从强劲续航到人性化应用推荐,Android9都能想您所想,保障持久流畅的用户体验。全新的 Android仪表板Goo
SpringMVC环境下实现的Ajax异步请求
一环境搭建首先是常规的springmvc环境搭建,不用多说,需要注意的是,这里需要引入jackson相关jar包,然后在spring配置文件“springmvc-servlet.xml”中添加json解析相关配置,我这里的完整代码如下:text/html;charset=UTF-8application/json;charset=UTF-8atom=application/atom+xmlhtml
程序员编程的10个实用技巧
1.橡皮鸭调试法不知道各位有没有这样的经历,当你正在给别人描述问题的时候,突然灵机一动想到了解决方案?这种情况的产生是有科学依据的。高谈阔论能让我们的大脑重新有条理地组织问题。在这种情况下,你的聊天对象就是“橡皮鸭”。团队中的每个人都应该积极主动乐意地成为彼此的“橡皮鸭”。有时候,如果你幸运的话,你的“橡皮鸭”搞不好还能给出有效的建议呢。2.快速信息反馈一旦写好代码就要尽快得到反馈。当你和我们在H
Spring Http源码
/*Copyright2002-2017theoriginalauthororauthors.LicensedundertheApacheLicense,Version2.0(the"License");youmaynotusethisfileexceptincompliancewiththeLicense.YoumayobtainacopyoftheLicenseat http://www.ap
35岁程序员的独家面试经历
创业失败后,在找工作。选择了三家(两家上市公司,一家即将上市),都走到了关键的节点。我记录了面试过程中被问到的一些问题,希望对自己将来的面试有帮助,也希望对别人有所启发。我的经历和现状与被问到的问题息息相关,如下:2002年毕业。2002~2005做售后技术支持,2005离职转做软件开发。2009开始做项目经理,后来做部门经理,期间还有50%左右精力在技术上。2014.10~2014.11,项目总
网页世纪:2018年的 网页图标设计趋势
图标可能是您投资组合中最重要且被低估的设计示例之一。这里是2018年的图标设计,以及鼓舞人心的图标和设计工作的一些很好的例子。图标元素几乎无处不在,但有时候会产生一种事后的想法。情况应该不是这样。一个伟大的图标设计可以是独特的,并为项目添加技巧和天赋。让我们来看看2018年的新图标和图标设计的热点!线条样式图标设计线条样式图标似乎是永不变老的趋势。部分原因是这种图标样式几乎可以在任何背景类型的任何
axios封装及api接口统一定义
话不多说,项目中使用axios,参考了多方大神封装代码,有了这篇文章。最开始的代码,main.jsimport Vue from 'vue'import App from './App'import router from './router'import VueCropper from 'vue-cropper'// mint uiimport Mint from 'mint-ui'import