摘要:
volatile 关键字: 当多个线程进行操作共享数据时,可以保证内存中的数据可见。 相较于 synchronized 是一种较为轻量级的同步策略。 注意: 1. volatile 不具备“互斥性”: 互斥性:多个线程访问时,只能有一个线程可以拿到锁。 2. volatile 不能保证变量的“原子性 阅读全文
摘要:
读线性表有感一维数组可以是静态分配的,也可以是静态分配的动态分配并不是链式存储,同样是属于顺序存储结构,其物理结构没有发生变化,依然是随机存储方式,只是分配的空间大小可以在运行时决定 联想到了java中的数组与集合数组就是静态分配,集合就是动态分配 阅读全文
摘要:
以下涉及到的算法,都是关于线性表的顺序表示和实现这部分的算法题目 阅读全文
摘要:
根据年前的一些互联网面试的一些情况,大部分公司对数据结构与算法 考察的内容比较多,基于这一点再加上之前一直想夯实算法的基本功,寒假期间开始看《数据结构》这本书,里面涉及到的算法基本都是基于C语言去实现的一些伪代码。本来是想着去刷Leetcode,一是感觉题目太多,二是感觉不是很系统,所以打算先把这本 阅读全文
摘要:
1 package comcollection.test; 2 3 import java.util.Comparator; 4 import java.util.Iterator; 5 import java.util.TreeSet; 6 7 /** 8 * @author MJC 9 *2018年2月8日 10 * 下午9:28:56 11 */ 12 pub... 阅读全文
摘要:
1 package com.sort.test; 2 3 import java.util.Arrays; 4 import java.util.Scanner; 5 6 /** 7 * @author MJC 8 *2017年12月20日 9 * 下午7:50:10 10 */ 11 12 13 阅读全文
摘要:
1. HashMap 是基于哈希表的Map接口的实现。 这个实现提供了所有可选的映射操作,并且允许key与value为null HashMap类大致等同于Hashtable,除了它是不同步并允许空值。这个类没有保证map的顺序; 特别是不保证这个顺序 将随时间保持不变。 2. 这个实现为基础提供了恒 阅读全文
摘要:
每个运行中的java程序都是一个JVM实例,一个JVM实例就会有多个执行引擎在工作,每个线程就是一个执行引擎的实例。 所以一个JVM实例对应多个线程。 一个JVM实例会有一个方法区、java堆、java栈、pc寄存器、本地方法区,其中方法区和java堆是所有线程共享的。 当新建一个线程时,会有一个新 阅读全文