自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Fhang

千里之行,始于足下

  • 博客(4)
  • 收藏
  • 关注

原创 牛客网BAT算法精讲总结2-字符串(KMP算法详解)

1. kmp算法kmp算法是字符串匹配经典算法。 字符串匹配算法复杂度为 O(m*n), 而kmp算法可以降到 O(m+n) 算法思路: 这个算法的切入点在于,当我们进行匹配,匹配到某个字符不一样时,前面匹配过的是字符 模式串和主串是一样的,即比如 主串: abaaabab 模式串: abab 假设我们把模式串分为三部分, 最长前缀+中间+最长后缀,(这里最长前缀和最长后缀...

2018-03-31 17:17:02 758

转载 Java虚拟机:JVM内存分代策略

转自: https://www.cnblogs.com/fangfuhai/p/7206944.htmlJava虚拟机根据对象存活的周期不同,把堆内存划分为几块,一般分为新生代、老年代和永久代(对HotSpot虚拟机而言),这就是JVM的内存分代策略。为什么要分代?堆内存是虚拟机管理的内存中最大的一块,也是垃圾回收最频繁的一块区域,我们程序所有的对象实例都存放在堆内存中。给堆内存分代...

2018-03-14 16:25:27 396

原创 实现死锁和生产者消费者

死锁程序:public class TestDeadLock implements Runnable { public int flag; static Object o1 = new Object(); static Object o2 = new Object(); public void run() { System.out.pri...

2018-03-01 22:21:54 977

原创 判断链表是否有环并求环的入口和环的长度

方法:求链表是否有环,最直观的方法是从头结点的地址开始,把下一个地址都取出来,然后比对,是否有相同的。但这个方法需要两两比较,算法时间复杂度较高。更好的一个做法是快慢指针(慢指针一次前进一个地址,快指针一次前进两个地址)同时从头结点出发,只有链表有环存在,则它们必定会相遇。快慢指针算法有一个注意点,慢指针进入环之前,快指针可能已经在环中绕了几次圈了。首先比较简单的是求环的长度,当快慢指...

2018-03-01 10:15:13 573

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除