20240228

54.螺旋矩阵

本题中从外到内进行遍历,每一次遍历一个环,初始时设left为环的最左则横坐标,right为环的最右侧横坐标,top为环的最上侧纵坐标,buttom为环的最下侧纵坐标,即left = 0, right = n - 1, top = 0, button = m - 1,m为矩阵的宽,n为矩阵的长,每遍历一环,环围成的矩阵四个方向的长度均减1,每次横向遍历长度为right - left,纵向遍历长度为button - top,算法的流程如下图:

注意:由于遍历环的上、下边时,每次遍历长度为right - left,因此两种相等时,环横向的宽度为1,此时已跳出循环,因此需对这一列单独遍历,遍历左、右边时同理。

搭建集群时并发安全问题:

每一个java虚拟机jvm都有一个锁监视器,仅能保证该虚拟机内部只有一个线程进行互斥操作,对于不同的集群由于使用了不同的jvm,因此普通悲观锁无法实现集群间互斥。

上图中JVM1和JVM2分别代表集群中的一台主机,每一个JVM中均有锁监视器实现对该主机内线程的互斥,但不能实现主机间线程互斥,如线程1和线程3。

分布式锁:

定义:满足分布式系统或集群模式下多进程可见并且互斥的锁。

常见分布式锁对比:

全部评论

相关推荐

09-17 10:53
四川大学 C++
牛客91242815...:会写标书没有任何卵用,鉴定为横向垃圾导师的受害者
点赞 评论 收藏
分享
09-17 17:09
门头沟学院 Java
雨忄:有人给出过解法,拖晚点去,然后到时候再找其他理由商量,既增加他们的筛人成本,不一定会给你收回offer ,也能占位避免工贼
秋招的嫡长offer
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务