算法
文章平均质量分 89
Java大杨
平平无奇的Java小能手
今天你敲代码了吗
展开
-
因为一次 Kafka 宕机引发的高可用问题,我明白了 Kafka 高可用原理!
Kafka宕机引发的高可用问题问题要从一次Kafka的宕机开始说起。所在的是一家金融科技公司,但公司内部并没有采用在金融支付领域更为流行的RabbitMQ,而是采用了设计之初就为日志处理而生的Kafka,所以我一直很好奇Kafka的高可用实现和保障。从Kafka部署后,系统内部使用的Kafka一直运行稳定,没有出现不可用的情况。但最近系统测试人员常反馈偶有Kafka消费者收不到消息的情况,登陆管理界面发现三个节点中有一个节点宕机挂掉了。但是按照高可用的理念,三个节点还有两个节点可用怎么就引起了整原创 2021-01-29 17:46:53 · 505 阅读 · 0 评论 -
这本“算法宝典”讲得透彻,完全掌握后,我竟拿到字节跳动offer
前言字节跳动,相信大家都已经对这家公司很熟悉了,尤其是近几年来,对它的认识也在不断刷新,它惊人的发展速度确实让行业内人刮目相看,如今很多年轻人也想要挤进字节跳动,它越来越火热,自然也就越来越难进了!对于字节跳动,我也有不一样的情愫,毕业后就开始着手准备面试的事情,字节跳动也是我的目标之一。在面试前,我做了不少功课,众所周知的是字节对于算法的要求是很高的,算法算是字节面试必问的,也是成功的关键之一。所以,提前刷一刷算法题很有必要,而我也特意整理到了一份难得的“算法宝典”,这本宝典讲各大算法题讲得非原创 2021-01-28 17:15:36 · 386 阅读 · 0 评论 -
建议收藏!二叉树各种遍历方式我都帮你总结啦,附有队列堆栈图解,便于你巩固基础
前言今天我来分享一篇关于二叉树的文章(建议收藏,便于巩固基础)。看完此文leetcode至少解决八道题 掌握二叉树的前序、中序、后序遍历以及两种不同的实现方式:递归与非递归 非递归时遍历与层次遍历时,有详细的图解表示队列/栈中的元素是如何移动的,有助于理解代码的运行二叉树介绍二叉树(binary tree)是指树中节点的度不大于2的有序树,它是一种最简单且最重要的树。二叉树的递归定义为:二叉树是一棵空树,或者是一棵由一个根节点和两棵互不相交的,分别称作根的左子树和右子树组成的..原创 2021-01-20 17:22:15 · 147 阅读 · 6 评论 -
高级程序员的必备技能:时间复杂度与空间复杂度的计算!一招搞定算法
前言算法(Algorithm)是指用来操作数据、解决程序问题的一组方法。算法是大厂、外企面试的必备项,也是每个高级程序员的必备技能。针对同一问题,可以有很多种算法来解决,但不同的算法在效率和占用存储空间上的区别可能会很大。那么,通过什么指标来衡量算法的优劣呢?其中,上面提到的效率可以用算法的时间复杂度来描述,而所占用的存储空间可以用算法的空间复杂度来描述。时间复杂度:用于评估执行程序所消耗的时间,可以估算出程序对处理器的使用程度。 空间复杂度:用于评估执行程序所占用的内存空间,可以估算出程序对原创 2021-01-09 18:01:11 · 176 阅读 · 0 评论 -
说到分布式,重要的Paxos算法你看透了么?
前言开源分布式锁组件 Google Chubby 的作者 Mike Burrows 说——这个世界上只有一种一致性算法,那就是 Paxos 算法,其他的算法都是残次品。Paxos 算法虽然重要,但也复杂。Quorum 机制在说 Paxos 算法之前,先来看分布式系统中的 Quorum 选举算法。在各种一致性算法中都可以看到 Quorum 机制的身影,主要数学思想来源于抽屉原理:在 N 个副本中,一次更新成功的如果有 W 个,那么我在读取数据时是要从大于 N-W 个副本中读取,这样原创 2021-01-08 17:48:28 · 228 阅读 · 0 评论