自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (1)
  • 收藏
  • 关注

原创 MySQL性能调优(1)索引的数据结构

一般的生产环境中,对数据库读的操作远远大于写的操作,而且插入操作和一般的更新操作很少出现性能问题,我们遇到最多的问题,还是一些复杂的查询操作,因此对查询语句的优化显然是重中之重。而对查询的优化,最容易想到的便是给字段加索引,这涉及到了如何加索引,加什么索引,怎么进行索引优化等一系列问题,解决这些问题之前我们需要先学习索引的底层数据结构,从底层去解决问题。索引用一句话概括,就是排好序的数据结构。索引的数据结构(1)二叉搜索树说到排好序的数据结构,最容易想到的就是二叉搜索树了,如下图:利用二叉搜索树

2021-02-20 20:47:17 2368 5

原创 Java集合(4):HashMap的put源码分析及扩容机制详解

根据上一篇文章 Java集合(3):小白也能看懂的HashMap图解、底层原理与Hash算法 ,明白了HashMap的底层原理,以及当一个元素添加进来时,HashMap什么时候会扩容,什么时候链表会变为红黑树。接下来将从源码分析PUT方法的流程。put源码解析与流程分析代码的解释在注释里: //首先调用了putVal方法 public V put(K key, V value) { return putVal(hash(key), key, value, false, tr

2021-02-14 18:52:22 293 2

原创 Java集合(3):小白也能看懂的HashMap图解、底层原理与Hash算法

前面分析了Java集合中ArrayList和LinkedList的源码,这次说一下另一个常用的集合:HashMap。一 、HashMap的特点(1)属于Map下的集合,用KV键值对存储元素,元素是无序的,key不允许重复,value允许重复,允许存储null。(2)底层数据结构是哈希表,实现是链表+数组,JDK 8 后又加了红黑树。(3)多线程环境下不安全,解决方法:使用Hashtable;调用Collections类的synchronizedMap方法;使用juc包下的Concurrent

2021-02-13 20:20:13 2245 1

原创 Java集合(2):LinkedList概述与源码解析

一、LinkedList的概述与特点LinkedList与ArrayList一样都实现了List接口,但是在底层上却截然不同。也许在平时中它的使用频率不及ArrayList,但是相较于ArrayList,LinkedList也具有独有的特点,因此知道它的实现方式以及在特定场合中使用它是很有必要的。LinkedList的特点如下:(1)底层为一个双向链表,存储空间不连续,增删快,查找慢。(2)属于List,有序存储,存储元素可重复,允许null元素存储。(3)不支持同步,线程不安全。二、继承体系

2021-02-07 16:33:59 250 3

原创 Java集合(1):ArrayList深度解析

一、ArrayList 的概述与特点ArrayList就是动态数组,是数组Array的复杂版本,它具有以下特点:(1)是一个动态数组,支持动态扩容(2)有序存储,存储的元素可重复,并支持null元素的存储(3)底层为数组,查找快,增删慢(4)不支持同步,线程不安全二、ArrayList 的继承体系查看源码,发现ArrayList继承AbstractList抽象父类,实现了List、RandomAccess、Cloneable、Serializable接口。其中:(1)List接口:定义了L

2021-02-05 11:27:19 1370 3

原创 JVM垃圾收集机制

《深入理解java虚拟机》笔记1.垃圾回收作用区域程序计数器、虚拟机栈、本地方栈为线程私有,其内存在编译期可以确定,随线程结束或方法结束而回收。Java堆、方法区由于只有在运行期才能知道需要创建哪些对象,有很大的不确定性,所以内存由垃圾收集器(GC)回收。2.判断对象是否需要清理的算法2.1 引用计数法概述:给对象添加一个计数器,被引用则+1,引用失效则-1,为零时则被回收优点:判断效率高缺点:额外花销内存来技术如果对象之间互相引用则无法回收2.2 可达性分析概述:把一些重要的对象列为

2020-11-02 14:46:15 171 1

原创 不用换源,使用本地安装方法解决安装PyTorch慢的问题

Pytorch是一个非常好用的机器学习库,非常适合神经网络新手用户的使用。本文主要讲述了安装完Anaconda后如何安装PyTorch的问题。下载所需要的包首先登入清华大学开源软件镜像站,找到porth包,网址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/然后根据自己python的版本和cpu与gpu选...

2020-03-16 14:05:20 977 3

bootstrap-3.3.7-dist.rar,免费下载

bootstrap-3.3.7-dist.rar,送给由于官网下载限速导致下载慢或者下载不下来的朋友,官网下载的,解压即可用

2020-04-16

空空如也

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

TA关注的人

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