自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JDK并发包之CyclicBarrier

       CyclicBarrier也是一种计数器,其实可以反复使用的,比如说,将计数器设置为10,那么凑齐第一批10个线程后,计数器就会清零,然后可以接着凑齐下一批10个线程。CyclicBarrier是比CountDownLatch更加强大的,CyclicBarrier可以接收一个参数作为barrierAction。所谓的barrierAction就是当计数器一次计数完毕后,会执行的动作。...

2018-07-31 10:03:37 789

原创 JDK并发包之CountDownLatch

       CountDownLatch(倒计时器)通常用来控制线程等待,它可以让一个线程等待直到倒计时结束再开始执行。CountDownLatch的构造函数接收一个整数作为参数,即当前这个计数器的个数:public CountDownLatch(int count);       CountDownLatch常用的方法:       countdown()方法,指倒计时器减一。  ...

2018-07-30 23:11:38 881

原创 JDK并发包之Semaphore和ReadWriteLock

1、信号量(Semaphore)       synchronized和ReentrantLock都是一次只允许一个线程访问资源,而信号量却可以指定多个线程同时访问一个资源。信号量主要有两个构造函数:public Semaphore(int permits);public Semaphore(int permits, boolean fair);//第二个参数可以指定是否是公平的 ...

2018-07-30 23:07:22 720

原创 LintCode:有效数字

描述给定一个字符串,验证其是否为数字。样例"0" => true" 0.1 " => true"abc" => false"1 a" => false"2e10" => true思路:按照.和e进行分割,判断分割后的字符串是否符合标准。.前面可以有数字也可以没有数字,如果e和.都存在,则他们中间必须有数字,e

2018-07-23 15:36:05 1066

原创 可重入锁ReentrantLock与Condition

一、可重入锁ReentrantLock可重入锁可以完全替代synchronized,与synchronized相比,ReentrantLock是显式操作,需要手动指定何时加锁,何时释放锁。之所以称之为可重入锁,是因为一个线程可以连续两次获得同一把锁,例如:lock.lock();lock.lock();try{ i++;}finally{ lock.unlock(); ...

2018-07-22 23:30:57 1032

原创 LintCode:恢复IP地址

描述给一个由数字组成的字符串。求出其可能恢复为的所有IP地址。样例给出字符串 "25525511135",所有可能的IP地址为:[ "255.255.11.135", "255.255.111.35"](顺序无关紧要)实现:回溯法public class Solution { /** * @param s: the IP string...

2018-07-22 16:22:37 849

原创 LintCode:Subsets II

思路:采用回溯法实现:public class Solution { List<List<Integer>> res=new ArrayList<>(); public List<List<Integer>> subsetsWithDup(int[] nums) { if(nums==null...

2018-07-16 16:24:11 628

原创 LintCode:Circular Array Loop

描述You are given an array of positive and negative integers. If a number n at an index is positive, then move forward n steps. Conversely, if it's negative (-n), move backward n steps. Assume the first...

2018-07-10 15:43:19 525

原创 LintCode:跳跃游戏

描述给出一个非负整数数组,你最初定位在数组的第一个位置。数组中的每个元素代表你在那个位置可以跳跃的最大长度。判断你是否能到达数组的最后一个位置。样例A = [2,3,1,1,4],返回 true.A = [3,2,1,0,4],返回 false.动态规划实现:public class Solution { public boolean canJump(int[] A) { ...

2018-07-07 15:03:58 464

原创 LintCode:跳跃游戏 II

描述给出一个非负整数数组,你最初定位在数组的第一个位置。数组中的每个元素代表你在那个位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。样例给出数组A = [2,3,1,1,4],最少到达数组最后一个位置的跳跃次数是2(从数组下标0跳一步到数组下标1,然后跳3步到数组的最后一个位置,一共跳跃2次)动态规划实现:public class Solution { ...

2018-07-07 13:45:25 457

原创 一个死锁的示例代码

可以看到,控制台什么都没有输出,所以是发生了死锁。public class DeadLock { public static void main(String[] args) { DeadLockThread deadLock1=new DeadLockThread(true); DeadLockThread deadLock2=new DeadLockThread(false);...

2018-07-05 23:16:04 6793 3

原创 LintCode:合并区间

描述给出若干闭合区间,合并所有重叠的部分。思路:先按照start排序,然后根据情况进行合并。实现:/** * Definition of Interval: * public classs Interval { * int start, end; * Interval(int start, int end) { * this.start = start;...

2018-07-05 19:38:31 436

IDEA搭建的一个简单的spring boot+mybatis工程demo

IDEA搭建的一个简单的spring boot+mybatis工程demo,适合初学者

2021-06-06

空空如也

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

TA关注的人

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