八股文
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
前言最讨厌的东西就是八股文了,但是没办法,这东西会忘记,不记不行。
题库开始OSI七层网络是什么答案
七层网络各有哪些协议答案
IP五层网络是什么答案
一个HTTP连接的底层是什么样的答案1
答案2
HTTP1.0,1.1,2.0的区别答案1
答案2
TCP拥塞控制是怎么实现的
拥塞控制三个状态如何转移
答案
TCP流控制是什么答案
HTTP状态码301和302的区别301 永久重定向
302 临时重定向
CA证书有哪些内容
颁发机构信息,域名,公钥,有效期。
证书中还会有==证书中信息通过加密算法==生成的数字签名。
数字签名就是一种保证数据完整性(不被篡改)和有效性(是真正的使用者发来的,不是伪造者发来的)的手段。它一般是通过给数据计算出的hash值加密生成。
SSL和TLS握手流程答案
SYN攻击如何避免答案
ICMP是什么答案
P ...
美团笔试2
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
备注美团笔试每次都能教育人,太难了。
第一题输入n,k,然后输入n个数字,数字为0代表Alis的房子可能出现在这里,数字非0代表其他的房子(数字的值就是价格),你要买一个房子,然后距离Alis的房子的期望距离最近。
题目出锅了,我暴力枚举,但是一直wa,wa了半个小时了实在是不敢相信,然后切到了第二题,写到一半难受,一想到我连第一题都过不了我就难受,我又来回马枪,杀回第一题,然后还是wa,最后狠心决定把第一题丢了算了,来来回回浪费了不少时间,还是一直没过,最后切完第三题的时候,笔试也快结束了,才发现出现了一个公告,说第一题如果有多个答案输出最小的那个,我把第27行改成<就过了
123456789101112131415161718192021222324252627282930313233#include<bits/stdc++.h>using namespace s ...
滴滴笔试题
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
总揽两题都是10行代码不到就写了
第一题题意你有一个操作系统,他将要执行n个任务,每个任务有两个阶段,准备阶段和执行阶段,任务必须先完成准备,然后才能执行。
你的操作系统在任意时刻可以执行一个任务,并同时准备多个任务
问你最少花费多少时间可以执行完所有的任务
输入n表示n个任务
n行,第一个数字为准备时间,第二个数字为执行时间
输入12321 54 1
输出17
备注先准备一个时间,然后用5个时间执行第一个任务,然后花一个时间执行第二个任务
题解按照准备时间从小到大排序,然后依次模拟即可
第二题描述给你长度为n个数组(都是正数),你可以花费1的代价来改变一个数的值(改成正数),然后给你一个x,现在你需要用最小的代价把这个数组变长公差为x的等差数列,输出最小的代价。
输入125 31 3 1 3 5
输出13
备注改成1 3 5 7 9
问题转化把数组的下标当作横坐标,把 ...
蓄水池算法
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
题目描述你的公司想要开一个活动,每个用户都能抽奖,但是最终只有$M(M=10)$个用户能中奖。
当一个用户点击抽奖按钮,你的后台会收到他的账号
但是你不知道什么时候活动结束,你也没办法储存所有的账号,如何保证活动结束时,你能随机选出10个用户来?
抽象给你一个数据流,数据流中的数据个数N未知,你需要从中选出M(M<=N)个不重复的数据,用什么样子的策略能保证随机取到每个元素。
时间复杂度要求: O(N)
空间复杂度要求: O(M)
数学归纳法假设N=X
假设X=M, 则我们全选即可
假设X>M, 对于数据流的前X个数据,我们从中取出了M个数据,并且这X个元素中每一个元素被选到的概率都相同,恰好为$\frac{M}{X}$, 当数据流中又出现了一个数据的时候,我们希望这个数据被选中的概率为$\frac{M}{X+1}$, 希望前X个数据出现 ...
Kafka权威指南
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
由于这是第三篇Kafka方面的学习资源,参见 深入理解Kafka-核心设计与实践原理和Kafka,所以笔者对一些重复的部分进行了跳过,这里只写一些很重要的内容以及有趣的知识。
第三章 Kafka生产者-向kafka写入数据生产者配置acks(再重复一遍这个配置)
acks参数指定了必须要有多少个分区副本收到消息,生产者才会认为消息写入是成功的。这个参数对消息丢失的可能性有重要影响。该参数有如下选项
如果acks=0,生产者在成功写入消息之前不会等待任何来自服务器的响应。也就是说如果当中出现了问题,导致服务器没有收到消息,那么生产者就无从得知,消息也就丢失了。不过,因为生产者不需要等待服务器的响应,所以它可以以网络能够支持的最大速度发送消息,从而达到很高的吞吐量
如果acks=1,只要集群的首领节点收到消息,生产者就会收到一个来自服务器的成功响应。如果消息无法到 ...
深入理解Kafka-核心设计与实践原理
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
深入理解Kafka: 核心设计与原理实践
5.1 文件目录布局kafka文件目录中有很多文件,一般情况下我们只需要掌握*.index, *.log,*.timeindex*即可
5.2 日志格式的演变
从0.8.x版本开始到现在的2.0.0版本,Kafka的消息格式也经历了3个版本:v0版本、v1版本和v2版本。
分区由一条条消息组成,如果消息设计的不够合理,分区的功能和性能会受到影响,过多的冗余导致储存增加、网络开销大、性能降低,缺少字段又会影响到日志的保存、切分策略。
V0版本的消息右边是消息集,每个Record是一条消息,offset是偏移量,messagesize代表消息的长度。
对于每个RECORD,他的字段如下
名称
功能
大小
crc32
消息内容的循环冗余校验值
4B
magic
消息版本号
1B
attributes
消息压缩算法
1B
ke ...
Kafka时间轮
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
原文链接
侵删
一张图理解Kafka时间轮(TimingWheel),看不懂算我输!
本文是【字节可视化系列】Kafka专栏文章。
通过本文你将了解到时间轮算法思想,层级时间轮,时间轮的升级和降级。
时间轮,是一种实现延迟功能(定时器)的巧妙算法,在Netty,Zookeeper,Kafka等各种框架中,甚至Linux内核中都有用到。
本文将参考Kafka的时间轮作为例子讲解。
0 设计源于生活开始之前给大家看块宝珀中华年历表。
图片来自宝珀官网
这款手表的表盘融合了中华历法中各种博大精深的计时元素。
上方位置的小表盘显示时辰数字及字符,24小时一周期;年份视窗显示当年所属生肖,12年一周期;
左边位置显示农历月,12个月一周期; 农历日, 30天一周期;
右边位置显示五行元素和十天干,10年一周期;
下方的表盘显示月相盈亏。
至于价格…..这个话题略过。
而时间轮,其设 ...
设计模式Java版
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
设计模式(JAVA版)
第四章 结构型模式代理模式
在spring中,我们常用的动态代理就是代理模式,代理模式目的是代理对象,增强其原有的功能,例如日志打印,数据库事务等
装饰模式
装饰模式的目的是拓展、增强原有功能,例如在Java中FilterInputStream
12InputStream inputStream = System.in;DataInputStream dataInputStream = new DataInputStream(new BufferedInputStream(inputStream));
FilterInputStream的子类均为装饰器
装饰模式和代理模式的区别代理模式侧重于代理,增强原有函数的能力,代理模式一般为硬编码,一般就一两层
装饰模式侧重于拓展,优化原有函数的能力,可以不断装饰,一层又一层
适配器模式
把一个类对另一个接口进行适配, ...
HTTP权威指南
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
HTTP权威指南
第一章: HTTP概述媒体类型
因特上有数千种不同的数据类型,HTTP仔细地给每种要通过Web传输的对象都打上了名为MIME类型( MIME type)的数据格式标签。最初设计MIME( Multipurpose Internet Mail Extension,多用途因特网邮件扩展)是为了解决在不同的电子邮件系统之间搬移报文时存在的问题。MIME在电子邮件系统中工作得非常好,因此HTTP也采纳了它,用它来描述并标记多媒体内容。
Page: 6
URI
服务器资源名被称为统一资源标识符( Uniform Resource Identifier,URI)。
Page: 7
URI分为两种,URL(统一资源定位符)和URN(统一资源名)
下面是一个URL例子
URN是作为特定内容的唯一名称使用的,与目前的资源所在地无关。使用这些与位置无关的URN,就可以将资源四处搬移。 ...
从TCP看HTTP
nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial
以下我们演示一条HTTP请求指令
123[root@11c749e93da4 /]# curl www.baidu.com<!DOCTYPE html><!--STATUS OK--><html> <head><meta http-equiv=content-type content=text/html;charset=utf-8><meta http-equiv=X-UA-Compatible content=IE=Edge><meta content=always name=referrer><link rel=stylesheet type=text/css href=http://s1.bdstatic.com/r/www/cache/bdorz/baidu.min.css><titl ...