11 2017 档案

摘要:回溯法 回溯法简介 回溯法的基本步骤 回溯法之经典问题 回溯法之经典问题Sudoku数独 回溯法 1.回溯法简介 回溯法,又称试探法,是常用的,基本的优选搜索方法。常用于解决这一类问题:给定一定约束条件F(该约束条件常用于后面的剪枝)下求问题的一个解或者所有解。 回溯法其实是暴力枚举的一种改进,因为 阅读全文
posted @ 2017-11-20 12:16 Spground 阅读(332) 评论(0) 推荐(0)
摘要:LCS问题 简介 最长公共子串问题 最长公共子序列问题 References LCS问题 1. 简介 LCS通常是指Longest Common Subsequence, 但是也可代指Longest Common Substring。子串是一种特殊的子序列,子串和子序列的区别就是字串要求是组成子串的 阅读全文
posted @ 2017-11-20 12:09 Spground 阅读(515) 评论(0) 推荐(0)
摘要:Maven简介与Maven安装 简介 1 目标 2 标准化 3 应用 下载安装 创建Maven项目 1 创建项目 2 修改POM 总结 Maven简介与Maven安装 1.简介 1.1 目标 Maven是一个自动化构建工具,常用来构建和管理java项目。 Maven的主要目的是让开发人员在最短的时间 阅读全文
posted @ 2017-11-20 12:04 Spground 阅读(390) 评论(0) 推荐(1)
摘要:KMP算法 KMP算法简介 KMP算法与确定性有限状态自动机DFA 1 DFA与KMP算法 2 DFA子串查找 KMP算法的主流实现 1 next数组 2 具体实现 KMP算法 1.KMP算法简介 KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt同 阅读全文
posted @ 2017-11-20 12:00 Spground 阅读(167) 评论(0) 推荐(0)
摘要:Union-Find算法 简介 原理 改进 应用 References Union-Find算法 1.简介 Union-Find算法又称并查集算法,是一种作用于并查集数据结构的算法。包含两个主要的操作: - Find 用于查找某个元素属于哪个集合,可以用来确定两个元素是否在同一个集合中; - Uni 阅读全文
posted @ 2017-11-20 11:58 Spground 阅读(266) 评论(0) 推荐(0)
摘要:Java的longdouble类型的原子性读取问题 检验 Java的long、double类型的原子性读取问题 In programming, an atomic action is one that effectively happens all at once. An atomic action 阅读全文
posted @ 2017-11-20 11:48 Spground 阅读(320) 评论(0) 推荐(0)
摘要:Java并发之Executors简介 ExecutorExecutorService和ScheduleExecutorService 几种线程池ThreadPollExecutorScheduleThreadPollExecutor和ForkJoinPool 生产者-消费者模型 Java并发之Exe 阅读全文
posted @ 2017-11-19 17:41 Spground 阅读(579) 评论(0) 推荐(0)
摘要:java中单例的几种写法 一单例模式常见的写法 二枚举类型实现单例模式 java中单例的几种写法 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例。 单例通常有很多种写法,但是性能和效果却是差距挺大。下面列举了几种常见的写法 阅读全文
posted @ 2017-11-19 17:39 Spground 阅读(428) 评论(0) 推荐(0)
摘要:Java equals compareTo()的区别 看JDK源代码尤其是集合框架源代码的时候,经常会看见两个方法: int equals(Object obj); int compareTo(Object obj); 在集合框架中大多数集合类是采用equals方法来对key进行区分的,例如Hash 阅读全文
posted @ 2017-11-19 17:37 Spground 阅读(218) 评论(0) 推荐(0)
摘要:Java getClass() VS instanceof VS == 含义 getClass() 返回调用对象object的运行时类(runtime class),一个Class实例。 a instanceof T 返回a是否是T类型的实例或者T类型的子类型的实例 a == b 判断a和b引用的是 阅读全文
posted @ 2017-11-19 17:34 Spground 阅读(132) 评论(0) 推荐(0)
摘要:HashMap与LinkedHashMap 简介 二者的区别 源码阅读 Best Practices HashMap与LinkedHashMap 1. 简介 在日常开发中我们经常会批量操作数据,因此很多高级语言除了提供数组,还给我们提供很多高级的、抽象的数据类型来让我们处理批量数据时得心应手。由于这 阅读全文
posted @ 2017-11-19 12:42 Spground 阅读(747) 评论(0) 推荐(1)
摘要:位运算的一些用例 位运算 几乎每种编程语言都为我们提供一种运算,它直接操作二进制数据,这种运算叫做位运算。 位运算分为移位、取反、与、或、异或、非,其中移位又包括左移位、右移位、左无符号移位、右无符号移位。 含义Java写法 与 a & b 或 a | b 异或 a ^ b 非(取反) ~a 左移 阅读全文
posted @ 2017-11-19 12:35 Spground 阅读(148) 评论(0) 推荐(0)
摘要:常见字符集和编码方式 ASCII、Unicode、GBK、GBK2312、UTF-8这些字符集和编码方式的名词总是让我们纠结,那么他们有什么区别呢? 一般来讲,除了UTF-8是字符集Unicode的编码方式,其余的例如ASCII、GBK等都属于字符集,它们为每一个字符集的字符都赋予了一个值,这个值可 阅读全文
posted @ 2017-11-19 12:33 Spground 阅读(725) 评论(0) 推荐(0)
摘要:堆和堆的应用堆排序和优先队列 堆 堆的应用堆排序 堆的应用优先队列 堆的应用海量实数中一亿级别以上找到TopK一万级别以下的数集合 总结 references 堆和堆的应用:堆排序和优先队列 1.堆 堆(Heap)是一种重要的数据结构,是实现优先队列(Priority Queues) 首选的数据结构 阅读全文
posted @ 2017-11-19 11:57 Spground 阅读(323) 评论(0) 推荐(0)
摘要:TCP中的NO_DELAY TCP网络优化的两种机制 write-write-read模式带来的问题 TCP NO_DELAY选项 TCP CORK选项 TCP中的NO_DELAY 1.TCP网络优化的两种机制 TCP(Transmission Control Protocol 传输控制协议)是一种 阅读全文
posted @ 2017-11-19 11:11 Spground 阅读(1008) 评论(0) 推荐(1)
摘要:IO复用 IO模型 1 阻塞IO 2 非阻塞IO 3 IO复用 4 信号驱动IO 5 异步IO 6 同步IO与异步IO 7 5种IO模型的Java示例 总结 References 1. IO复用 进程需要这样一种功能:内核一旦发现进程指定的一个或多个IO条件(事件)就绪(输入准备好被读取或者输出准备 阅读全文
posted @ 2017-11-19 11:06 Spground 阅读(141) 评论(0) 推荐(0)
摘要:虚拟IP与ARP协议 虚拟IP ARP协议 1 ARP协议 2 ARP缓存 虚拟IP与ARP协议 虚拟IP与ARP协议 1.虚拟IP 虚拟IP(Virtual IP Address),是一种不与特定计算机或者特定计算机网卡相对应的IP地址。所有发往这个IP地址的数据包最后都会经过真实的网卡到达目的主 阅读全文
posted @ 2017-11-18 17:23 Spground 阅读(1413) 评论(0) 推荐(0)
摘要:Java动态代理简述 一、代理简介 代理一词含义十分宽泛,例如金融领域的股票发行代理、营销领域的销售代理、以及计算机领域中的代理设计模式等。尽管代理一词被使用的领域如此广泛,但是代理一词的大致的抽象含义是相似的或者说是相同的。代理是一个被委托人委托其执行如下活动:参加活动、行驶权力、执行任务等。这样 阅读全文
posted @ 2017-11-13 20:42 Spground 阅读(202) 评论(0) 推荐(0)