51CTO首页
AI.x社区
博客
学堂
精品班
软考社区
免费课
企业培训
鸿蒙开发者社区
WOT技术大会
IT证书
公众号矩阵
移动端
短视频
免费课程
课程排行
直播课
软考学堂
全部课程
厂商认证
IT技术
25年5月软考
PMP项目管理
免费题库
在线学习
文章
资源
问答
课堂
专栏
直播
51CTO
鸿蒙开发者社区
51CTO技术栈
51CTO官微
51CTO学堂
51CTO博客
CTO训练营
鸿蒙开发者社区订阅号
51CTO软考
51CTO学堂APP
51CTO学堂企业版APP
鸿蒙开发者社区视频号
51CTO软考题库
鸿蒙开发者社区
首页
帖子
问答
资源
课堂
直播
发现
登录/注册
51CTO
中国优质的IT技术网站
51CTO博客
专业IT技术创作平台
51CTO学堂
IT职业在线教育平台
活动
短视频
专栏
极客Show
鸿蒙技术特刊
我的关注
全部帖子
操作系统
OpenHarmony
HarmonyOS
其他
应用开发
卡片开发
三方库
IDE
其他
设备开发
海思开发板
树莓派
其他
框架语言
C/C++
Java
JavaScript
ArkUI / eTS
其他
其他
物联网
云原生
数据库
操作系统
大数据
人工智能
开发语言
其他
社区版务
社区公告
社区生活
意见反馈
社区规则
社区活动
默认
发布时间
热度
原创
精华
热门标签
鸿蒙
HarmonyOS NEXT
华为
必须干掉这10道,面试100%遇到!(三)
0X05二叉树层序(锯齿)遍历二叉树的遍历,对应力扣102,107,103.详细分析:一次面试,被二叉树层序遍历打爆了如果普通二叉树层序遍历,也不是什么困难的问题,但是它会有个分层返回结果的操作,就需要你详细考虑了。很多人会用两个容器(队列)进行分层的操作,这里其实可以直接使用一个队列,我们首先记录枚举前队列大小len,然后根据这个大小len去枚举遍历就可以得到完整的该层数据了。还有一个难点就是二叉树的锯齿层序(也叫之...
joytrian
0回复
5252浏览
算法
动态规划,它来了(二)
最长递增子序列最长递增子序列,也称为LIS,是出现非常高频的动态规划算法之一。这里对应力扣300给你一个整数数组nums,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7]是数组[0,3,1,6,2,2,7]的子序列。输入:nums[0,1,0,3,2,3]输出:4解释:最长递增子序列是[0,1,2,3],因此长度为4。对于最长递增子序列,如果不考虑动态规划的方法,使...
joytrian
0回复
4353浏览
算法
必须干掉这10道,面试100%遇到!(二)
0X03环形链表对应力扣141和力扣142,力扣141环形链表要求为:给定一个链表,判断链表中是否有环,用O(1)内存解决。详细分析:环形链表找入口,真的太妙了这个问题利用快慢双指针比较高效,快指针fast每次走2步,slow每次走1步,慢指针走n步到尾时候快指针走了2n步,而环的大小一定小于等于n所以一定会相遇,如果相遇那么说明有环,如果不相遇fast先为null说明无环。具体代码为:publicclassSolution{publicbooleanhasCycle(List...
joytrian
0回复
5810浏览
算法
必须干掉这10道,面试100%遇到!(一)
大家好,我是bigsai,好久不见,天天想念。最近不少小伙伴跟我交流刷题肿么刷,我给的建议就是先剑指offer和力扣hot100,在这些题中还有些重要程度和出现频率是非常非常高的,今天给大家分享当今出现频率最高的10道算法题,最近铺天盖地的出现,学到就是赚到。本篇主要内容为:0X01翻转链表力扣206和剑指offer24原题,题意为:给你单链表的头节点head,请你反转链表,并返回反转后的链表。分析:翻转链表,本意是不创建新的链表...
joytrian
0回复
5045浏览
算法
字节一次面试,被二叉树的层序遍历捏爆了!
前言大家好,我是bigsai。在数据结构与算法中,二叉树无论是考研、笔试都是非常高频的考点内容,在二叉树中,二叉树的遍历又是非常重要的知识点,有个小老弟说他字节面试时候二叉树之字形打印紧张没写出来,力扣原题自己还写过很懊恼,我也回想起自己刚学习时候那段"混乱的"斗争,今天给大家讲讲二叉树的层序遍历。前面介绍了二叉排序树的构造和基本方法的实现,遍历也是比较重要的一环,并且二叉树的层序遍历也是bfs的最简单情...
joytrian
0回复
7150浏览
算法
二叉树各种遍历真的很难?大sai带你拿捏!(二)
二叉树的后序遍历二叉树的后序遍历非递归方式实现起来难度最大的,能够手写非递归后序,一定能亮瞎面试官的眼!后序遍历在二叉树树的顺序可以看下图(红色箭头指向的表示需要访问的,可以看出如果子树为null,那肯定要访问,否则就是从右子树回来的时候才访问这个节点)。递归二叉树递归方式后序遍历很简单,跟前序中序的逻辑一样,在力扣145有后序的code测试大家可以自己尝试一下。这里直接放我写的后序递归方式:classSolution{...
joytrian
0回复
6118浏览
算法
这个树,怎么一下就平衡了?(二)
四种不平衡情况处理针对四种不平衡的情况,这里对每种情况进行详细的讲解。RR平衡旋转(左单旋转)这里的RR指的是节点模型的样子,其含义是需要左单旋转(记忆时候需要注意一下RR不是右旋转)!出现这种情况的原因是节点的右侧的右侧较深这时候不平衡节点需要左旋,再细看过程。在左旋的过程中,root(oldroot)节点下沉,中间节点(newroot)上浮.而其中中间节点(newroot)的右侧依然不变。它上浮左侧所以需要指向根节点(oldroot)(毕竟...
joytrian
0回复
5884浏览
算法
最小生成树,秒懂!(二)
代码实现上面分析了逻辑实现。下面我们用代码简单实现上述的算法。primpackage图论;importjava.util.ArrayList;importjava.util.Arrays;importjava.util.Comparator;importjava.util.List;importjava.util.PriorityQueue;importjava.util.Queue;publicclassprim{publicstaticvoidmain(String[]args){intminlength0;最小生成树的最短路径长度intmax66666;Stringcityname[]{"北京","武汉","南京","上海","杭州","广州","深圳"};in...
joytrian
0回复
5343浏览
算法
二叉树各种遍历真的很难?大sai带你拿捏!(一)
前言大家好,我是bigsai,好久不见,甚是想念!今天带大家征服二叉树的前中后序遍历,包含递归和非递归方式,学到就是赚到!很多时候我们需要使用非递归的方式实现二叉树的遍历,非递归枚举相比递归方式的难度要高出一些,效率一般会高一些,并且前中后序枚举的难度呈一个递增的形式,非递归方式的枚举有人停在非递归后序,有人停在非递归中序,有人停在非递归前序(这就有点拉胯了啊兄弟)。我们回顾递归,它底层其实是维护一个...
joytrian
0回复
5449浏览
算法
这个树,怎么一下就平衡了?(三)
代码实现首先对于节点多个height属性。用于计算高度(平衡因子)插入是递归插入,递归是一个来回的过程,去的过程进行插入,回的过程进行高度更新,和检查是否平衡。推荐不要写全局递归计算高度,效率太低下,事实上高度变化只和插入和平衡有关,仔细考虑即不会有疏漏!代码写的比较早,如有命名不规范的情况,还请勿喷,如果有疏漏还请指出!importjava.util.ArrayDeque;importjava.util.Queue;publicclassAVLTree{classnode{int...
joytrian
0回复
5285浏览
算法
深入理解 ELK 中 Logstash 的底层原理 + 填坑指南(二)
四、Logstash怎么跑起来的4.1Logstash如何运行的你会好奇Logstash是怎么运行起来的吗?官方提供的启动方式是执行logstashfweblog.conf命令来启动,当执行这个命令的时候其实会调用Java命令,以及设置java启动参数,然后传入了一个配置文件weblog.conf来启动Logstash。cdhomelogstash7.6.2sudo.binlogstashfweblog.conf当启动完之后,我们通过命令来看下Logstash的运行状态psefgreplogstash执行结果如下图所示,可以看到用到了Ja...
r660926
0回复
8833浏览
Logstash
5000 字 | Nacos 架构原理①:一条注册请求会经历什么?(二)
三、随机节点:平等的世界我们来看下客户端是如何随机选择一个节点的,流程图如下:那么如何找到这些代码逻辑呢?思路是怎么样的?我们之前讲过,RpcClient会发起request请求,用的是和Nacos建立currentConnection连接来发起调用,代码如下:发起调用responsethis.currentConnection.request(request,timeoutMills);这个currentConnection是客户端和Nacos集群中的某个节点建立的连接,我们找下它在哪里赋值的。代码如下:拿到Na...
HoverInTheSky
0回复
8548浏览
Nacos
6000字 | 深入理解 Ribbon 的架构原理
大家好,我是悟空。今天我们来看下微服务中非常重要的一个组件:Ribbon。它作为负载均衡器在分布式网络中扮演着非常重要的角色。本篇主要内容如下:在介绍Ribbon之前,不得不说下负载均衡这个比较偏僻的名词。为什么说它偏僻了,因为在面试中,聊得最多的是消息队列和缓存来提高系统的性能,支持高并发,很少有人会问负载均衡,究其原因,负载均衡的组件选择和搭建一般都是运维团队或者架构师去做的,开发人员确实很少接触到。...
HoverInTheSky
0回复
9211浏览
Ribbon
5000 字| 揭秘 Nacos 的 AP 架构 「Distro 一致性协议」(二)
三、定时同步:如何保持数据一致性3.1为什么需要定时同步在Nacos集群模式下,它作为一个完整的注册中心,必须具有高可用特性。在集群模式下,客户端只需要和其中一个Nacos节点通信就可以了,但是每个节点其实是包含所有客户端信息的,这样做的好处是每个Nacos节点只需要负责自己的客户端就可以(分摊压力),而当客户端想要拉取全量注册表到本地时,从任意节点都可以读取到(数据一致性)。那么Nacos集群之间是如何通过Distro协...
HoverInTheSky
0回复
8475浏览
AP 架构
16 图 | 实战 Eureka 集群搭建+服务注册+调用(一)
大家好,我是悟空呀之前已经写过7篇Eureka注册中心的源码剖析和理论讲解相关的文章了,缺少一点实战。本篇会带大家做一个实战案例,涉及内容:•配置服务注册到Eureka注册中心。•服务之间通过注册的服务名来访问。•本地如何搭建Eureka集群。•本地如何搭建微服务集群。•如何用Ribbon实现负载均衡。目录之前的几篇Eureka文章也汇总下:领导让我研究Eureka源码启动过程领导“叕”让我研究Eureka源码:注册...
HoverInTheSky
0回复
7458浏览
Eureka
7000 字 | 20 图 | 一文带你搭建一套 ELK Stack 日志平台(二)
三、部署logstash日志过滤、转换工具3.1安装JavaJDK$sudoaptinstallopenjdk8jdk修改etcprofile文件sudovimetcprofile添加如下的内容到你的.profile文件中:JAVAJAVAHOME"usrlibjdkjdk12"PATH"$PATH:$JAVAHOMEbin"再在命令行中打入如下的命令:sourceetcprofile查看java是否配置成功javaversion3.2安装logstash下载logstash安装包curlLOhttps:artifacts.elastic.codownloadslogstashlogstash7.7.1.tar.gz解压安装tarxzvflogstash...
HoverInTheSky
0回复
6356浏览
ELK Stack
5000 字 | Nacos 架构原理①:一条注册请求会经历什么?(一)
前言上篇我们讲解了如何使用Nacos作为注册中心和配置中心。6000字|20图|Nacos手摸手教程这次我们来聊下Nacos的注册服务的底层原理。Nacos作为注册中心,用来接收客户端(服务实例)发起的注册请求,并将注册信息存放到注册中心进行管理。那么一条注册请求到底会经历哪些步骤呢?知识点预告先上一张整体的流程图:•集群环境:如果是Nacos集群环境,那么拓扑结构是什么样的。•组装请求:客户端组装注册请求,下一步对...
HoverInTheSky
0回复
6322浏览
Nacos
16 图 | 实战 Eureka 集群搭建+服务注册+调用(二)
五、组成Eureka集群修改本地hosts配置host文件添加两台Eurekaserver的地址映射,都为本地localhost地址127.0.0.1eurekaserver1127.0.0.1eurekaserver2修改EurekaServer配置两个服务互相向对方注册,第一个Eureka开放8761端口,注册到第二个Eureka的8762端口。第一个EurekaServer的配置并启动server:port:8761eureka:instance:hostname:eurekaserver1client:serviceUrl:defaultZone:http:eurekaserver1:8762eureka修改第二个Eure...
HoverInTheSky
0回复
6203浏览
Eureka
6000 字|20 图|Nacos 手摸手教程(一)
大家好,我是悟空呀。上次我们讲解了OpenFeign的架构原理,这次我们要来进入Nacos帝国了,Nacos作为服务注册中心、配置中心,已经非常成熟了,业界的标杆,在讲解Nacos的架构原理之前,我先给大家来一篇开胃菜:讲解Nacos如何使用。涉及到如下两个话题:•用Nacos作为注册中心。•用Nacos作为配置中心。由于本篇是针对Nacos的使用和配置教程,可能会略显枯燥,建议大家快速浏览一遍,然后收藏转发下,以后说不定就会用...
HoverInTheSky
0回复
5797浏览
Nacos
6000 字|20 图|Nacos 手摸手教程(二)
二、Nacos作为配置中心2.1传统配置方式•application.properties文件中定义两个配置:member.nickname"悟空聊架构"member.age"18"•示例控制器中定义私有变量nickname和age,value代表从配置中取值Value("${member.nickname}")privateStringnickname;Value("$member.age")privateIntegerage;•示例控制器中定义方法:获取nick和age的值RequestMapping("testlocalconfig")publicRtestLocalConfig(){returnR.ok().put...
HoverInTheSky
0回复
5632浏览
Nacos
暂无内容
1
20
21
22
23
24
25
26
27
28
67
精选
客服
订阅鸿蒙技术特刊,精选内容抢先看
微信扫码关注,即刻订阅