![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
eight
文章平均质量分 55
。。。
mengml_smile
我就是我 不一样的自我
展开
-
哈希表
哈希表 地址index=H(key) 构造方法 直接定制法 H(key)=a*key+b(比较简便,均匀) 数字分析法 H(key)=key%100000 分析key中的全体数据,并从中提取分布均匀的若干位或他们的组合构成全体 一个班级的学生都出生在同一个地区 同一年 他们的身份证的前面数位都是相同的 平方取中法 平方扩大差异,而后取中间数位作为最终存储地址 适合事先不知道数据并且数据长度较小 折叠法 适用于数字位数较多且事先不知道数据分布 比如key=123 456 789 我原创 2020-09-25 16:03:54 · 3143 阅读 · 0 评论 -
数据结构-tree
树 根节点 度 一个节点有多少个分支,度就是多少 叶子节点 度为0的节点就是叶子节点(没有分支的节点都是叶子节点) 树的度 一棵树中,最大的结点的度称为树的度 深度 指从根节点到该节点的最长简单路径边的条数(根节点和叶子节点 深度和高度是一样的) 高度 该节点到叶子节点的最长简单路径边的条数(根节点和叶子节点 深度和高度是一样的) 二叉树 树的度 不超过2的就是二叉树 二叉搜索树(binary search tree) 特征 左子树中所有节点的值小于根的值 右子树中所有节点的值大于或等于原创 2020-08-26 18:18:49 · 3328 阅读 · 0 评论 -
UDP/TCP HTTP/HTTPS
7层网络协议 TCP 有连接 数据正确性 UDP ping命令 无连接 程序简单 不安全 丢包 无序 效率高 HTTP pipelining 默认情况下http协议中每个传输层连接只能承载一个http请求和响应,然后结束 HTTP管线化是将多个HTTP要求(request)整批提交的技术 而在传送过程中不需先等待服务端的回应 仅HTTP/1.1支持此技术(HTTP/1.0不支持) 只有GET和HEAD请求可以进行管线化,而POST则有所限制 浏览器默认不启动管线机制,因为对方(服务器)不一定支原创 2022-01-25 22:23:03 · 1741 阅读 · 0 评论 -
MT-question
TLAB: 同步效率过低每个线程申请一份空间(优先使用之后放入公共空间)原创 2021-02-21 22:08:09 · 83 阅读 · 0 评论 -
question2
Java中的i++线程安全问题 i++语句执行过程(读取i i+1 将增值加后的i赋值给之前的i 非原子性的存在线程安全性问题) volatile并不能保证非原子性操作的多线程安全问题得到解决 volatile解决的是多线程间共享变量的可见性问题 解决 synchronized AtomicInteger(CAS 算法) Lock和synchronized区别 synchronized重量级锁 Lock是一个接口,而synchronized是Java中的关键字 synchronized异常释.原创 2020-12-23 17:13:02 · 319 阅读 · 0 评论 -
question1
分布式锁redis和zk redis 优点 性能高 使用简单 在允许偶发锁失效的场景 缺点 轮询抢占锁的机制不是很可靠 线程占用锁时间较长时可能导致其他线程抢占锁失败(因为是主动拿锁有blocktime) zk zk的临时有序节点 多个线程同时抢占锁会创建多个节点a1->a2->a3->a4->a5… 第一个节点线程获得锁 节点注册watch机制 a1使用完后会释放当前节点 同时watch下一个节点a2 优点 不依靠轮询抢占锁 依靠的是节点间的通信 比较可靠 缺点 性能不.原创 2020-12-18 14:28:49 · 298 阅读 · 0 评论 -
question
1.使用 insert into tablA select * from tableB 语句时,一定要确保 tableB 后面的 where,order 或者其他条件,都需要有对应的索引,来避免出现 tableB 全部记录被锁定的情况 https://mp.weixin.qq.com/s/JD7Sm8UnMwrkCanQGcm4Pg ...原创 2020-12-18 14:29:23 · 2787 阅读 · 0 评论