奋斗的青春

【求你将我放在你心上如印记,带在你臂上如戳记。因为爱情如死之坚强,嫉恨如阴间之残忍。】 —— 圣经.雅歌 8.6


  • 首页

  • 分类

  • 归档

  • 标签

  • 公益

synchronized同步静态方法

发表于 2019-04-14   |   分类于 技术篇

先明确几点:

1、所有synchronized修饰的非静态方法用的都是同一把锁:实例对象本身

2、所有synchronized修饰的静态方法用的都是同一把锁:类对象本身

3、而对于同步块,由于其锁是可以选择的,所以只有使用同一把锁的同步块之间才有着竞态条件

阅读全文 »

Java内存模型

发表于 2019-04-09   |   分类于 技术篇

Java运行时数据区

先上一张图,这是我找到的最好的一张了。

从图来看,我们可以把Java内存区分为堆内存(Heap)和栈内存(Stack)。虽然这种分法比较粗糙,实际上要复杂的多,不过初学者来说这是我们最关注的的两块区域。

阅读全文 »

LRU缓存算法

发表于 2019-04-02   |   分类于 技术篇

LRU

LRU(Least Recently Used)是一种常见的页面置换算法,在计算中,所有的文件操作都要放在内存中进行,然而计算机内存大小是固定的,所以我们不可能把所有的文件都加载到内存,因此我们需要制定一种策略对加入到内存中的文件进项选择。

阅读全文 »

矩阵中的路径

发表于 2019-03-29   |   分类于 面试篇

描述:矩阵中的路径。路径可以从矩阵中的任意一格开始,每一步可以在矩阵中向左、右、上、下移动一格。

eg:下面3 x 4的矩阵中包含一条字符串”bcced”的路径,但矩阵中不包含”abcd”的路径。
a b c e
s f c s
a d e e

阅读全文 »

排序算法对比

发表于 2019-03-26   |   分类于 面试篇

基本概念

比较排序和非比较排序:

  • 常见的排序算法都是比较排序
  • 比较排序的时间复杂度通常为 O(n2) 或者 O(nlogn),比较排序的时间复杂度下界就是 O(nlogn)
  • 非比较排序包括计数排序、桶排序和基数排序, 非比较排序对数据有要求 ,因为数据本身包含了定位特征,所有才能不通过比较来确定元素的位置
  • 非比较排序的时间复杂度可以达到 O(n),但是都需要额外的空间开销
阅读全文 »
1…789…20
LuisStruggle

LuisStruggle

Learning and communication

99 日志
8 分类
219 标签
GitHub Weibo
友情链接
  • V2EX社区
  • Cnode社区
© 2012 - 2020 LuisStruggle