摘要: 声明:这篇博文纯属是最近看源码时闲着没事瞎折腾(好奇心驱动),对实际的应用程序编码我觉得可能没有那么大的帮助,各位亲就当是代码写累了放松放松心情,视为偏门小故事看一看就可以了,别深究。 一、从Object和System谈起 首先是Object类中的hashCode()方法: native修饰的方法。 阅读全文
posted @ 2018-01-04 08:33 Qcer 阅读(692) 评论(0) 推荐(1) 编辑
摘要: 仅以此文总结自己的2017年,迎接2018年。 一、略显平淡的工作 怎么讲呢?本来工作应该是重点,毕竟一年中近三分之一的时间都投入在工作上,但是很奇怪,却没有太多想写(或者值得写)的东西。 这一年经历了工作中的所谓比较大的突变,包括更换到新的办公环境(导致现在平均每天耗时2h在上班途中,饱受吐槽,不 阅读全文
posted @ 2017-12-31 10:56 Qcer 阅读(719) 评论(2) 推荐(1) 编辑
摘要: 单线程环境下的单例实现运行在多线程环境下会出现问题(volatile也只能保证可见性,并不能保证原子性)。 以上示例代码在我的运行环境下输出如下: 表明多个线程去获取单实例得到的却不是同一个对象,违背了单实例模式的初衷。其原因在于,如下代码不能保证原子性: 同步机制是一种可行的改进策略,采用sync 阅读全文
posted @ 2017-12-28 22:38 Qcer 阅读(487) 评论(0) 推荐(0) 编辑
摘要: 过滤器的工作时机介于浏览器和Servlet请求处理之间,可以拦截浏览器对Servlet的请求,也可以改变Servlet对浏览器的响应。 其工作模式大概是这样的: 一、Filter的原理 在Servlet API中,过滤器接口Filter会依赖于FilterChain和FilterConfig两个接口 阅读全文
posted @ 2017-12-27 21:43 Qcer 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 问题描述: 回文是正序与逆序相同的非空字符串,例如“civic”、“racecar”都是回文串。任意单个字符的回文是其本身。 求最长回文子序列要求在给定的字符串中找出最长的回文子序列(即找出的序列不要求在原序列中连续)。 例如,序列A=“javaej”,其最长回文子序列为“javaj”,长度为5。 阅读全文
posted @ 2017-11-15 08:35 Qcer 阅读(2243) 评论(0) 推荐(0) 编辑
摘要: 一、问题描述 给定两个字符串A和B,要求用少的编辑操作将A转换成B,其中允许的操作有三种: 1、替换 2、插入 3、删除 注意,A[i]=B[i]表示A和B的对应位置字符已经相同,因此在这种情况下,是不需要经过任何的编辑操作的。 例如,给定字符串A和B如下: 由A->B最少需要进行4步编辑操作,分别 阅读全文
posted @ 2017-11-14 08:39 Qcer 阅读(584) 评论(0) 推荐(1) 编辑
摘要: 一、基础知识总结 赫夫曼编码是一种变长编码。 赋予高频词的字符较短的码字,低频次的字符较长的码字。 所谓前缀码是没有任何码字是其他码字的前缀,使用前缀码使得在解码过程中更加简单无歧义。 二叉树结构对于生成前缀码有特殊的优势,因为每一个叶节点到其他叶节点之间无关联,无法找到一个叶节点到其他叶节点的连续 阅读全文
posted @ 2017-11-13 11:18 Qcer 阅读(1147) 评论(0) 推荐(0) 编辑
摘要: 一、问题描述 该问题在算法导论中引申自求解两个DNA序列相似度的问题。 可以从很多角度定义两个DNA序列的相似度,其中有一种定义方法就是通过序列对齐的方式来定义其相似度。 给定两个DNA序列A和B,对齐的方式是将空格分别插入到A和B序列中,得到具有相同长度的对齐后的序列C和D;空格可以插入到任意的位 阅读全文
posted @ 2017-11-12 20:45 Qcer 阅读(4152) 评论(2) 推荐(1) 编辑
摘要: 问题描述: 给定一个长度为n(n>=2)的无序正整数序列ary,要求同时找到其中最大和最小值元素,并返回其和。 分析: 将最大值max和最小值min看成一对(mix,min),每次从序列中成对地取出两个元素,将其中较小者与min比较并更新,将其中较大者与max必将并更新,这样处理每一对元素只需要3次 阅读全文
posted @ 2017-11-10 14:55 Qcer 阅读(538) 评论(0) 推荐(0) 编辑
摘要: 最长公共子序列问题在算法导论中引申自确定DNA序列相似度的问题:给定两个DNA序列S1和S2,寻找第三个序列S3,要求序列S3中的元素都来源于S1和S2,且在这三个序列中先后顺序相同,但在S1和S2中不要求连续,如果找到这样的S3序列越长,可以认为S1和S2相似度越高。 问题描述: 给定两个序列X= 阅读全文
posted @ 2017-11-10 12:23 Qcer 阅读(375) 评论(0) 推荐(0) 编辑