10 2018 档案
摘要:Bloom Filter是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否可能属于这个集合。 它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除困难。 初始状态时,Bloom Filter是一个包含m位的位数组,每一位都置为0。 对于
阅读全文
摘要:有一栋100层的高楼,一个鸡蛋从第N层及以上的楼层落下来会摔破, 在第N层以下的楼层落下不会摔破。给你2个鸡蛋,设计方案找出N,并且保证在最坏情况下, 最小化鸡蛋下落的次数。(假设每次摔落时,如果没有摔碎,则不会给鸡蛋带来损耗) 如果只有一个鸡蛋,就只能从第1层逐层往上扔,最坏的情况下,要99次(假
阅读全文
摘要:12个球,其中一个和其他的重量不一样,有一个天平,最多几次找出这个球 将球编号,分成3组,1234 5678 9101112 第一次将1234,5678放在天平的两边 如果平衡,则坏球在9101112里,第二次取9,10称 如果平衡,则坏球在11,12里,将10换成11,如果平衡,则坏球是12,如果
阅读全文
摘要:将25匹马分成ABCDE5组,假设每组的排名就是A1>A2>A3>A4>A5,用边相连,这里比赛5次 第6次,每组的第一名进行比赛,可以找出最快的马,这里假设A1>B1>C1>D1>E1 D1,E1肯定进不了前3,直接排除掉 第7次,B1 C1 A2 B2 A3比赛,可以找出第二,第三名 所以最少比
阅读全文
摘要:1000瓶药水,1瓶有毒药,服用后一小时毒发,毒药可以无限稀释,那么一小时内用几只小白鼠能够找出毒药? 假如是8瓶药水,3只小白鼠。 000=0 001=1 010=2 011=3 100=4 101=5 110=6 111=7 每位数表示一只老鼠,0-7表示8个瓶子。即将1,3,5,7号瓶子的药混
阅读全文
摘要:Design and implement a data structure for Least Recently Used (LRU) cache. It should support the following operations: get and put. get(key) - Get the
阅读全文
摘要:我们假设对写操作的请求比对读操作的请求更重要,就要提升写请求的优先级。 此外,如果读操作发生的比较频繁,我们又没有提升写操作的优先级,那么就会产生“饥饿”现象。 请求写操作的线程会一直阻塞,直到所有的读线程都从ReadWriteLock上解锁了。
阅读全文
摘要:什么是事务传播行为 事务传播行为(为了解决业务层方法之间互相调用的事务问题): 当事务方法被另一个事务方法调用时,必须指定事务应该如何传播。例如:方法可能继续在现有事务中运行,也可能开启一个新事务,并在自己的事务中运行。 Spring通过事务传播机制可以很好地应对事务方法嵌套调用的情况。 代码中me
阅读全文
摘要:第四章 IoC容器 4.1 IoC概述 IoC(Inverse of Control 控制反转),控制是指接口实现类的选择控制权,反转是指这种选择控制权从调用类转移到外部第三方类或容器的手中。 也就是由Spring容器借由Bean配置来进行控制。 DI(Dependency Injection 依赖
阅读全文
摘要:分布式事务是指会涉及到操作多个数据库的事务。其实就是将对同一库事务的概念扩大到了对多个库的事务。 目的是为了保证分布式系统中的数据一致性。分布式事务处理的关键是必须有一种方法可以知道事务在任何地方所做的所有动作,提交或回滚事务的决定必须产生统一的结果(全部提交或全部回滚)。 当我们的单个数据库的性能
阅读全文