首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
趣链
订阅
用户7148667373592
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
数据结构堆、大顶堆、堆排序介绍
堆堆必须是完全二叉树大顶堆大顶堆要求所有父节点值大于子节点已知子节点index找父节点:parent=(child-1)/2已知父节点index找子节点:child1=parent*2+1,child
跳表介绍
跳表的可以提高查询效率,添加和查询的时间复杂度都是lon(n)原始数据时有序的链表,然后在上层添加索引链表,索引是原始数据的子集,以此变稀疏通过上层可以找到,查找数据的返回,往下层走
你知道哪些锁
共享、排他锁(readwritelock)乐观锁、悲观锁(cas、synchronize)可重入锁(reentrantrylock,线程可以进入任何他已经拥有锁的,同步着的代码块,最大作用是避免死锁)
什么是线程安全问题
线程安全问题就是变量可见性问题。线程内部修改属性是先修改线程的缓存,在将结果返回给主内存,但是当主内存变化时,其他线程不会第一时间知道这个消息,这就有了数据不一致的问题。
概括的解释下线程的几种可用状态。
笔记新建可运行运行阻塞死亡原文1.新建(new):新创建了一个线程对象。2.可运行(runnable):线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可
线程之间如何通信
通过volatile进行通信,在变量前加volatile修饰,每当变量值修改,就会通知所有线程,这个值修改了。如果没有volatile,变量只在主存中修改,不同线程内部不会第一时间改变。通过notif
Mysql时间字段
TimeStamp:时间戳,从1970年1月1号到现在的秒数,4个字节datetime:年月日时分秒的形式,8个字节date:年月日,3个字节time:时间或者时间的持续值,3个字节year:年份,1
说一下 JVM 运行时数据区
JVM运行时数据区也就是我们所说的jvm内存,它分为程序计数器,虚拟机栈,堆,本地方法区,方法区无部分。程序计数器,用于记录下一条指令的位置,在线程恢复,异常处理需要用到它;它是线程私有的,不存在内存
getclass和instanceof
首先假设有变量Integeri;getclass是获得对象的类,例如integer.getClass();iinstanceofInteger是判断i是否是Integer类型的,或者是Integer的
哪些对象可以作为 GC Root 呢
虚拟机栈(栈帧中的本地变量表)中引用的对象本地方法栈中JNI(即一般说的Native方法)引用的对象方法区中类静态属性引用的对象方法区中常量引用的对象