Amp

leetcode1038(从二叉搜索树到更大和树)--C语言实现

核能气质少年 提交于 2020-08-09 12:23:25
求: 给出二叉 搜索 树的根节点,该二叉树的节点值各不相同,修改二叉树,使每个节点 node 的新值等于原树中大于或等于 node.val 的值之和。 提醒一下,二叉搜索树满足下列约束条件: 节点的左子树仅包含键 小于 节点键的节点。 节点的右子树仅包含键 大于 节点键的节点。 左右子树也必须是二叉搜索树。 示例: 输入:[4,1,6,0,2,5,7,null,null,null,3,null,null,null,8] 输出:[30,36,21,36,35,26,15,null,null,null,33,null,null,null,8] 提示: 树中的节点数介于 1 和 100 之间。 每个节点的值介于 0 和 100 之间。 给定的树为二叉搜索树。 注意:该题目与 538: https://leetcode-cn.com/problems/convert-bst-to-greater-tree/ 相同 解: 思路:反向中序遍历,记录前面出现的所有节点的值的和,加入到当前节点。递归操作完成后,返回根节点的指针。 /** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ void

Centos手动编译安装升级openssh

丶灬走出姿态 提交于 2020-08-09 11:23:29
centos6通过yum安装的openssh默认为5.3p1,已经非常落后了,且很多漏洞,只能通过升级sshd来修复。 第零部分 安装telnet(略)以免卸载ssh之后无法连接服务器 第一部分 备份和卸载老版本的openssh(如果有的话) 通过find / -name "ssh"和find / -name "sshd"找到openssh的配置文件,一般是在/etc/ssh目录,所以将整个目录备份 cp -r /etc/ssh /etc/ssh.old 通过rpm -qa |grep openssh命令查找本机安装的openssh服务,一般结果有三行openssh,openssh-server,openssh-clients 然后通过rpm卸载 rpm -e --nodeps openssh rpm -e --nodeps openssh-server rpm -e --nodeps openssh-clients 此时通过rpm -qa |grep openssh和find / -name "ssh"等命令查找ssh,会发现已经卸载干净了 第二部分 下载编译安装新版openssh 首先通过yum安装依赖和必要工具 yum install wget gcc openssl-devel pam-devel rpm-build tcp_wrappers-devel -y 然后在

用树莓派4,OLED,USB摄像头搭建条形码扫描设备

我们两清 提交于 2020-08-09 11:15:24
最近618优惠,买了树莓派4,打算给娃当电脑用。到手之后先自己玩了下,做了一个简单的扫码程序。 树莓派4相关硬件采购 树莓派4的4GB版本。官方定价65美金,京东300减40到手389。 Micro HDMI转HDMI线。树莓派4更换了电源接口。 HDMI母对母转接头。用于延长HDMI线。 树莓派智能贴身管家。包含可编程风扇,RGB灯和OLED显示模块。 系统安装 官网下载官方系统 https://www.raspberrypi.org/downloads/。 用Win32 Disk Imager把镜像写到sdcard里。 卡插入树莓派4,连接电源。注意:电源至少3A输出,不要随便连接USB接口供电。 系统配置 开启I2C, VNC, 和SSH。 要通过Windows远程连接,可以安装tightvncserver和xrdp: sudo apt update sudo apt install tightvncserver xrdp 接下来检查下磁盘空间是否足够: df -H Filesystem Size Used Avail Use% Mounted on /dev/root 32G 8.9G 21G 30% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 2.1G 0 2.1G 0% /dev/shm tmpfs 2.1G 9.1M 2.1G 1%

阿里云EDAS 3.0重磅发布,无侵入构建云原生应用

偶尔善良 提交于 2020-08-09 11:09:07
发布会传送门 进入直播间还有好礼等你拿! EDAS产品免费试用: https://www.aliyun.com/activity/middleware/edaspromotiononmay 首届云原生编程挑战赛正式开战!立即报名瓜分330000现金奖: https://tianchi.aliyun.com/specials/promotion/cloudnative#problem-definition 观看《云原生架构师培训课程》领取新用户折扣: https://yqh.aliyun.com/live/AlibabaCloudNative 据介绍,EDAS3.0 围绕微服务治理、K8s 集群纳管、监管控一体化、阿里云其他基础产品集成体验进行了全面升级,包括无侵入(无需修改一行代码)即可兼容Spring Cloud/Dubbo近5年发布的所有版本,使用全套微服务治理能力,例如金丝雀发布、离群实例摘除、服务鉴权、无损下线、限流降级和全链路流控等。此外,EDAS3.0 在提供 K8s 集群托管的基础山,提供了应用实例打散一键多 AZ 高可用部署、应用发布版本管理、发布变更跟踪、应用层机制弹性等全流程的管控能力,帮助用户更高效的管理阿里云上的容器集群。 EDAS产品经理先河在发布会上表示,EDAS3.0 除了在微服务治理和容器纳管上提供了差异化的产品竞争力外

WFP and IP headers

大憨熊 提交于 2020-08-09 11:04:46
WFP & IP headers Hi there, I've recently decided I should probably learn some driver development and for better or for worse I've started with WFP. I figured that this would be a good place to start as (correct me if im wrong) it's a much simpler API to use than NDIS and I've always wanted to learn more about the network side of things without being swamped in too much detail too soon. Anyway, I've been having a go at redirecting ip packets into a different network adapter by altering the ipv4 header source ip. I have the following set up: An exe for calling the WFE and adding my callout At

MySql读写分离实现

假装没事ソ 提交于 2020-08-09 11:01:02
1. 主从复制:主数据库有写操作,从数据库自动同步。从数据库通过I/O线程去请求主数据库的binlog日志文件(二进制日志,包含SQL的增删改查等,用来做备份恢复等),并写到中继日志中,SQL线程会读取中继日志,并解析成具体操作同步数据到从数据库。 2. 读写分离:数据库层面:主数据库复制写,从数据库复制读。软件(代码)层面:通过读写分离中间间,比如MyCat、shardingsphere等实现。 具体实现 数据库层面   1. 需要打开主库的二进制日志功能,通过配置文件修改。 (1)服务器ID命名 (2)日志功能开启 修改完后,重启sql服务,通过命令查看日志状态 (3)创建一个用户,并赋予replication slave权限。   2. 从库设置 (1)服务命名 (2)配置相关参数,重启服务 (3)连接主机,执行同步命令 代码程序层面 这里使用shardingsphere实现读写分离。 (1)相关jar引用 (2)读写分离配置 以上内容希望帮助到大家, 很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务

PNG与GIF与JPEG与SVG的不同用途有哪些?

江枫思渺然 提交于 2020-08-09 10:58:06
问题: When should certain image file types be used when building websites or interfaces, etc? 在构建网站或界面等时应该何时使用某些图像文件类型? What are their points of strength and weakness? 他们的优点和缺点是什么? I know that PNG & GIF are lossless, while JPEG is lossy. 我知道PNG和GIF是无损的,而JPEG是有损的。 But what is the main difference between PNG & GIF? 但是PNG和GIF之间的主要区别是什么? Why should I prefer one over the other? 为什么我更喜欢一个呢? What is SVG and when should I use it? 什么是SVG以及何时使用它? If you don't care about each and every pixel, should you always use JPEG since it's the "lightest" one? 如果你不关心每个像素,你应该总是使用JPEG,因为它是“最轻”的吗? 解决方案: 参考一: https:/

AppEmit是应用程序(尤其是浏览器)与本地程序间互相通信的易扩展的轻量级中间件

こ雲淡風輕ζ 提交于 2020-08-09 08:49:57
AppEmit v0.3.8 文档 概述 AppEmit是应用程序(尤其是浏览器)与本地程序间互相通信的易扩展的轻量级中间件。 AppEmit is an extensible lightweight middleware for communication between applications (especially browsers) and local programs. 主要采用了HTML5国际标准的Web Socket进行通话,默认为异步, JSON格式传递参数。 主要实现功能: 在浏览器播放含有flash的网页或Flash文件,包括swf交互动画、flv影视等 在浏览器打开、操作本地文件,比如办公软件 开发本地硬件DLL驱动模块的封装插件,实现在网页中操作控制本地的读卡器、打印机、扫描仪、高拍仪、U盾等各种硬件设备 各个应用程序之间通信 在Chrome里嵌入IE内核网页 解决问题 国际市场份额68%以上的chrome浏览器(数据来源Netmarketshare;中国内25%以上)在2020年12月后不再支持 NPAPI ,而微软的 edge 也不支持 ActiveX 。 客户习惯使用浏览器来处理各种业务。 游戏商、银行、医院、硬件等企业客户使用dll或者flash文件的场景需要。 相关链接 程序名称 AppEmit.exe 网址 http://www.appemit

详解 RestTemplate 操作

非 Y 不嫁゛ 提交于 2020-08-09 05:59:05
作为开发人员,我们经常关注于构建伟大的软件来解决业务问题。数据只是软件完成工作时 要处理的原材料。但是如果你问一下业务人员,数据和软件谁更重要的话,他们很可能会选择 数据。数据是许多业务的生命之血。软件通常是可以替换的,但是多年积累的数据是永远不能 替换的。 近几年来,以信息为中心的表述性状态转移( Representational State Transfer,REST )已经称为替代传统SOAP Web 服务的流行方案. SOAP关注的一般是行为和处理,而REST关注的是要处理的数据. 从Spring3.0开始,Spring为创建Rest API提供了良好的支持. REST提供了一个更简单的可选方案。另外,很多的现代化应用都会有移动或富JavaScript客户端,它们都会使用运行在服务器上REST API。 REST的基础知识 当谈论REST时,有一种常见的错误就是将其视为“基于URL的Web服务”——将REST作为另一 种类型的远程过程调用(remote procedure call,RPC)机制,就像SOAP一样,只不过是通过简单 的HTTP URL来触发,而不是使用SOAP大量的XML命名空间 恰好相反,REST与RPC几乎没有任何关系。RPC是面向服务的,并关注于行为和动作;而REST 是面向资源的,强调描述应用程序的事物和名词。 更简洁地讲

leetcode面试题04.04(检查树的平衡性)--C语言实现

久未见 提交于 2020-08-09 05:45:42
求: 实现一个函数,检查二叉树是否平衡。在这个问题中,平衡树的定义如下:任意一个节点,其两棵子树的高度差不超过 1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7 返回 true 。 示例 2: 给定二叉树 [1,2,2,3,3,null,null,4,4] 1 / \ 2 2 / \ 3 3 / \ 4 4 返回 false 。 解: 思路:判断树是否平衡,即判断对从根节点开始的任意一颗树及其子树,是否都满足左右子树高度差不超过1,如是返回真,否则返回假。 首先,需要一个高度判断函数,使用递归的形式实现,任意一个节点的高度,为左右子树高度值中的较大者+1。如果该节点是null,返回0(递归基) 对树的平衡性判断采用后序遍历,先判断树根是否是null,如是返回真。如果树根不是null,先判断左右子树是否平衡,如果不平衡返回假,否则返回真。在左右子树高度都平衡的情况下,判断根节点是否平衡,整个过程递归实现即可。 /** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ int max( int x, int y){