自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (2)
  • 收藏
  • 关注

原创 基于JDK1.8源码分析HashMap容器

前言基于JDK1.8源码解析Map集合类下的HashMap,以及HashMap与HashTable的对比。要点总结:HashMap底层是数组+链表/红黑树(在JDK1.7及之前是数组+链表); HashMap根据哈希算法,计算key的HashCode(具体可参考Object类的HashCode()方法),为了减少冲突概率,在与数组长度做与运算之前,将高16位与低16位做异或运算,高位...

2019-12-23 14:32:57 244

原创 List集合类介绍(源码分析)

前言基于JDK1.8源码解析List集合类下的ArrayList,Vector与ArrayList的区别,LinkedList。要点总结:ArrayList底层是数组,初始容量默认为10,每次扩容为原容量的1.5倍; ArrayList基于动态数组实现,扩容的底层通过JNI调用JVM里由C/C++编写的native方法实现,可概括为申请一块新的内存存放新数组,再把原数组的数据拷贝到新...

2019-12-23 14:09:02 275

原创 LeetCode10

import java.util.HashMap;import java.util.Map;public class LeetCode10 { // trash code// public boolean isMatch(String s, String p) {// // corner case// p = organizePatternStr(p);// if (p.equals("")) {// retu.

2021-10-26 22:31:26 89 1

原创 LeetCode9

public class LeetCode9 { public boolean isPalindrome(int x) { if (x < 0) return false; int n = x, y = 0; while (n > 0) { int z = y; z *= 10; z += n%10; n /= 10; .

2021-10-26 22:21:14 74

原创 LeetCode8

public class LeetCode8 { public int myAtoi(String s) { if (s == null || s.equals("")) { return 0; } int res = 0; int sign = 1; int i = 0; char[] chars = s.toCharArray(); for (char c .

2021-10-26 22:20:10 78

原创 LeetCode7

public class LeetCode7 { public int reverse(int x) { if (x == Integer.MIN_VALUE) { return 0; } int neg = x < 0 ? -1 : 1; x *= neg; int ret = 0; while (x > 0) { int n = ret;.

2021-10-26 22:19:43 74

原创 LinkedHashMap的源码分析

TreeMap和LinkadHashMap的源码分析

2020-06-06 04:12:09 112

原创 Java中的值传递和引用传递

Java中的值传递和引用传递

2020-05-21 22:51:25 178

原创 Java内部类的知识点总结

引言基于JDK1.8分析Java的内部类以及内部类的使用方法。1、内部类介绍内部类分为4种:成员内部类 静态内部类 局部内部类 匿名内部类思维导图:1.1 成员内部类在写法上与成员变量相似,直接写在类里。内部类的定义示例:public class OutClass { int a = 1; class InnerClass { int a = 2; public void printA() {

2020-05-17 23:26:59 189

原创 分析Java中的快速度失败机制(fast-fail)

参考资料:JDK1.8源码

2020-05-13 15:56:52 492

原创 工作中涉及到的设计模式(一):工厂模式

2020-05-12 17:13:35 407

原创 Java中的Object类了解过了吗?

Object类源码解析

2020-05-12 16:44:39 228

原创 多线程的ThreadLocal类(一):ThreadLocal概览以及通过源码分析运行原理

ttt

2020-05-12 15:02:45 173

原创 开发过程中常用到的linux 命令笔记

一、Linux权限的概念Linux下有两种用户:普通用户和超级用户()。普通用户:在linux下做有限的事情;超级用户:可以在linux系统下做任何事情,不受限制。普通用户的提示符是“$”,超级用户的命令提示符是“#”。命令:su [用户名]功能:切换用户Linux权限管理1.文件访问者的分类(人)文件和文件目录的所有者:u—User文件和文件目录的所有者所在的...

2020-05-11 20:20:16 177

原创 JVM入门(一):JVM的内存区域分析

参考:https://www.cnblogs.com/lewis0077/p/5143268.htmlJava虚拟机内存模型Java中通过多线程机制使得多个任务同时执行处理,所有的线程共享JVM内存区域main memory,而每个线程又单独的有自己的工作内存,当线程与内存区域进行交互时,数据从主存拷贝到工作内存,进而交由线程处理(操作码+操作数)。1、程序计数器程序计数器...

2020-05-11 20:18:38 117

原创 动态规划(一)经典问题:01背包

引言:动态规划的基本问题之一,几乎所有的动态规划问题的解决方法都可以从这些经典问题的方法的延伸中找到。步骤:1、将问题分解为子问题2、确定状态3、确定初始条件和边界条件4、确定状态转移方程5、根据以上计算出全局最优解问题描述:有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包...

2020-05-11 20:12:35 787

cppan-master-Windows-client

tesseract-ocr库的编译工具,放在tesseract目录下,并在命令行下进入tesseract文件夹,运行cppan

2018-07-08

input_data

tensorflow框架, input_data.py文件,自动读取MNIST数据集

2018-05-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除