DeepBlue的博客小站

学而时习之,可以为师矣

零拷贝

零拷贝什么是零拷贝?零拷贝技术,就是避免将数据从一块存储拷贝到另外一块存储的技术,从而节省拷贝带来的CPU开销,零拷贝并不是将拷贝操作完全消除掉。传统拷贝:这个没什么说的,就是平时我们一般都会用到的拷贝方式;MMAP方式的拷贝:当应用程序不需要对数据进行访问时,则可以避免将数据从内核空间拷贝到用户空

集合框架复习

JAVA集合框架结构首先我们知道JAVA的集合框架中有两大体系,一类是Collection,另一类是Map。其中Collection中包含List(ArrayList、LinkedList、Vector、还有继承自Vector的Stack)、Set(HashSet、LinkedHashSet、继承自

红黑树

红黑树最近面试老是被问到红黑树,堪称灵魂拷问:面试官:Java的HashMap在JDK1.8之后用的是红黑树,那你知道红黑树是什么吗?我:是一个自平衡的二叉排序树吧。面试官:能不能跟我细细说一下红黑树呢?我:底层源代码没有看过。面试官:那你走吧。太真实了,那今天就看看红黑树的底层是怎么实现的吧。什么

回溯算法复习

回溯算法复习题目来源:力扣39. 组合总和题目描述给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的数字可以无限制重复被选取。说明:所有数字(包括 target)都是正整数。

JVM

JVMJava内存区域:本地方法栈(native)虚拟机栈程序计数器方法区(包括运行时常量池)堆JDK1.8与JDK1.7最大的区别是:JDK1.8将永久代取消,取而代之的是元空间,在JDK1.8中方法区是由元空间来实现,所以原来属于方法区的运行时常量池就属于元空间了。本地方法栈本地方法栈是线程私有

Leetcode刷题笔记

leetcode刷题笔记计数二进制子串题目描述给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的。重复出现的子串要计算它们出现的次数。示例1:输入: "00110011"输出: 6解释: 有6个子串具有相同数

JMM

Java内存模型什么是JMMJMM全称是(Java Memory Model)即Java内存模型,那他是用来干什么的呢?其实他就越是一种规范,规定了你应该怎么去存取内存中的数据、类变量等资源。**规定了一个线程如何和何时可以看到由其他线程修改过后的共享变量的值,以及在必须时如何同步的访问共享变量。 

ConcurrentHashMap

ConcurrentHashMap我们都知道HashMap在并发下会产生数据不一致问题,所以衍生出了ConcurrentHashMap这样一个在并发环境下也能保证数据一致的Map,但是他的原理是底层代码是怎么写的呢?今天小编就带大家康康(其实是我自己得康康)首先先看JDK1.7中的Concurren

IO模型.md

I/O模型有五种I/O模型:阻塞型I/O:blocking IO非阻塞型I/O:nonblocking IOI/O复用:IO multiplexing信号驱动I/O:signal driven IO异步I/O:asynchronous IO对于一个network IO (以read举例),它会涉及到

hashmap分析

HashMap源码分析初始化方法://默认加载因子static final float DEFAULT_LOAD_FACTOR = 0.75f;//默认容量static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16//无参构