摘要:前言本篇文章是基于线程间的同步与通信和这篇文章写的,在那篇文章中,我们分析了接口所定义的方法,本篇我们就来看看对于接口的这些接口方法的具体实现。因此,条件队列在出队时,线程并不持有锁。 前言 本篇文章是基于线程间的同步与通信(4)——Lock 和 Condtion 这篇文章写的,在那篇文章中,我们分析了Condition接口所定义的方法,本篇我们就来看看AQS对于Condition接口...
摘要:锁的种类自动锁最常用可以给类方法代码块加锁手动锁,只能锁代码块儿,且需要手动加锁解锁,忘记解锁会造成死锁轻量级锁,不会造成线程阻塞,只能修饰变量,且只能保证变量的修改可见性,无法保证原子性解决死锁的方法尽量使用的方法,设置超时时间,超时可以 锁的种类: synchronize自动锁(最常用) 可以给类、方法、代码块加锁 lock手动锁,只能锁代码块儿,且需要手动加锁解锁,忘记解锁会造成...
摘要:经过上述讨论,我们发现,哈希查找的时间复杂度最小没有冲突是二是什么首先是中的一个接口。在中,有很多类实现了接口,就是其中的一个三是什么是一个实现了接口的基于哈希表的类。 我们要想知道HashMap是什么就先要了解Hash和Map是什么 一、Hash是什么 ① 哈希查找是一种数据结构中用于 查找 的算法,相比于其他查找算法,他的时间复杂度更 低,所以在实际应用中大量采取了哈希表的方...
摘要:知识点汇总,从基础到常用的还有常用的集合类,总结的很详细。图片是从论坛里面找到的,整理下来以便常复习。这是目前看到的比较详细完整的思维导图。基础知识面向对象常用集合多线程网络编程反射设计模式我有一个微信公众号,经常会分享一些技术相关的干货。 Java知识点汇总,从基础到常用的API、还有常用的集合类,总结的很详细。图片是从论坛里面找到的,整理下来以便常复习。这是目前看到的比较详细完整的...
摘要:边界条件,这时候之后只有一个值数组一直递减,这时候变成,没有,只需要从到的所有数。 31. Next Permutation 题目链接:https://leetcode.com/problems... 这道题就是找规律,可以看出来下一个permutation的规律是:从右往左扫,找到第一个满足:nums[i-1] < nums[i]条件的,再找到从右到左第一个比nums[i-1]大的数...