12 2016 档案
摘要:1、JVM定义 Java虚拟机(Java Virtual Machine),简称JVM。当我们说起Java虚拟机时,可能指的是如下三种不同的东西:. 抽象的虚拟机规范 规范的具体实现 一个运行中的虚拟机实例 Java虚拟机抽象规范仅仅是一个概念,在《The Java Virtual Machine
阅读全文
摘要:20161231 黄金分割比:短/长=长/(短+长)=((根号5)-1)/2 ≈ 0.618 斐波那契数列前后两项的比值存在极限。设其中三个数为a、b、(a+b),则当项数趋于无穷时有a/b=b/(a+b),这正好是黄金分割的定义,因此比值约为0.618 相关:http://www.guokr.co
阅读全文
摘要:1、问题 问题提出: M(如10亿)个int整数,只有其中N个数重复出现过,读取到内存中并将重复的整数删除。 2、解决方案 问题分析: 我们肯定会先想到在计算机内存中开辟M个int整型数据数组,来one bye one读取M个int类型数组, 然后在一一比对数值,最后将重复数据的去掉。当然这在处理小
阅读全文
摘要:NIO的Buffer提供了一个可以不经过JVM内存直接访问系统物理内存的类——DirectBuffer。 DirectBuffer类继承自ByteBuffer,但和普通的ByteBuffer不同,普通的ByteBuffer仍在JVM堆上分配内存,其最大内存受到最大堆内存的限制;而DirectBuff
阅读全文
摘要:用于在大数据场景下快速查找(常数时间复杂度)某个元素是否在元素集合中出现的技术,允许有误判情况出现。典型应用场景是允许小概率误判的场景,比如邮箱中的垃圾邮件标记。从功能上来说与HashMap/HashSet、BitSet类似且查找效率都很高,但有区别,见下文分析。 技术演化过程: 要判断一个元素是否
阅读全文
摘要:转自:二进制与三进制趣题 以下是全文: 1. 小明是个卖苹果的,小红一次在小明那买N(N<1024)个苹果。小明每次都要数N个苹果给小红,唉,太麻烦了。于是小明想出了一种方法:他把苹果分在10个袋子中,则无论小红来买多少个苹果,则他都可以整袋整袋的拿给小红。问怎样分配苹果到各个袋子? 2. 有16种
阅读全文
摘要:转自:大白话解析模拟退火算法 总结:模拟退火算法(SA,Simulated Annealing)是为了解决一些算法(如贪心算法)存在的陷入局部最优解的问题,其核心思想是在根据评价函数(如路径长度、距离等)靠近更优解的过程中也以一定的概率接受向非更优解靠近,以期跳出局部最优解。此“一定的概率”计算借鉴
阅读全文
摘要:1、NAT类型 目前主要的NAT类型有如下几种: 1)Full-cone NAT, also known as one-to-one NAT 一旦一个内网地址 (iAddr:iPort) 被映射到一个外部地址 (eAddr:ePort), 来自 iAddr:iPort 的任何数据包将通过 eAddr
阅读全文
摘要:转自:http://www.eamonning.com/blog/view/289 以下是全文 最早的时候有一个浏览器叫NCSA Mosaic,把自己标称为NCSA_Mosaic/2.0 (Windows 3.1),它支持文字显示的同时还支持图片,于是Web开始好玩起来。 然后出现了一个新的网页浏览
阅读全文
摘要:转自:http://blog.csdn.net/zhang_shuai_2011/article/details/38119657 原文如下: 一. CacheCache一般来说,需要关心以下几个方面1)Cache hierarchyCache的层次,一般有L1, L2, L3 (L是level的意
阅读全文
摘要:转自美团技术博客,原文地址:https://mp.weixin.qq.com/s/67HR4e8mHcuOcPl4h7FEnQ 常见性能优化策略分类 代码 之所以把代码放到第一位,是因为这一点最容易引起技术人员的忽视。很多技术人员拿到一个性能优化的需求以后,言必称缓存、异步、JVM等。实际上,第一步
阅读全文
摘要:转自美团技术博客,原文地址:http://tech.meituan.com/mysql-index.html 建索引的一些原则: 1.最左前缀匹配原则,非常重要的原则,mysql会一直向右匹配直到遇到范围查询(>、<、between、like)就停止匹配,比如a = 1 and b = 2 and
阅读全文