上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 17 下一页
摘要: 在Java中,一般都是通过同步机制来解决线程安全问题的,在JDK 5.0之后又新增了Lock的方式来实现线程安全。所以说实现线程安全方式一共有三种方法 方式一: synchronized(同步监视器){ //需要被同步的代码(操作共享数据的代码就是需要被同步的代码) } 通过继承Thread类的方式 阅读全文
posted @ 2019-04-19 12:32 包子的百草园 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 不考虑线程安全问题的时候单例模式的代码: 分析: 单例模式通俗来说就是要求我们在创建某一个对象的时候只能创建一个这个类的对象。在多线程的情况下,可能会有多个线程在各自的run()方法中调用public static Bank getInstance()方法创建类的对象实例,如果有一个线程再调用方法且 阅读全文
posted @ 2019-04-19 12:32 包子的百草园 阅读(365) 评论(0) 推荐(0) 编辑
摘要: 在JDK5.0之后新增加了一种更强大的线程同步机制 通过显示定义同步锁来实现线程同步解决线程安全问题。同步锁使用Lock对象充当。 java.util.concurrent.locks.lock接口是控制多个线程对共享资源进行访问的工具。锁提供了对共享资源的单独访问,每一次只能有一个线程对Lock对 阅读全文
posted @ 2019-04-19 12:31 包子的百草园 阅读(675) 评论(0) 推荐(0) 编辑
摘要: 一、问题引入:首先实现一个线程通信的实例,使用两个线程交替打印输出100以内的数字。 代码实现如下: wait()、notify()、notifyAll()三个方法的介绍: wait():某个对象调用wait()方法能让当前线程阻塞,并且当前线程还会释放所拥有的锁 调用某个对象的notify()方法 阅读全文
posted @ 2019-04-19 12:31 包子的百草园 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 1、使用Callable接口的方式实现多线程,这是JDK5.0新增的一种创建多线程的方法 2、使用Callable接口创建多线程和使用Runnable接口创建多线程的异同 相比较Runnable接口,Callable接口的功能更加强大。 相比较Runnable接口中需要重写的run()方法,Call 阅读全文
posted @ 2019-04-19 12:31 包子的百草园 阅读(473) 评论(0) 推荐(0) 编辑
摘要: 1、题目来源:选自LeetCode 402: 2、问题描述: 3、问题分析 通过分析我们可以得出这样的结论:如果后一个数字比前面的数字小的话,那么我们就要把前面的一个数字删除掉,并且每次把字符串中拆出来的数字push进栈的时候要考虑特殊情况:当栈不为空的时候可以把数字0存进去,反之如果栈为空且数字为 阅读全文
posted @ 2019-04-11 22:42 包子的百草园 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 1、题目来源:选自LeetCode 376:摆动序列 2、题目描述: 如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为摆动序列。第一个差(如果存在的话)可能是正数或负数。少于两个元素的序列也是摆动序列。 例如, [1,7,4,9,2,5] 是一个摆动序列,因为差值 (6,-3,5,-7 阅读全文
posted @ 2019-04-11 21:45 包子的百草园 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 1、题目来源: 选自LeetCode 455:分发饼干 2、题目描述: 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj 。如果 sj >= 阅读全文
posted @ 2019-04-11 20:59 包子的百草园 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 问题来源:选自leetCode 23:合并K个排序链表 问题描述: 题目给定信息: 不确定需要合并的链表的数目,但依然要求我们把给定的这些有序链表合并成一个链表,并且保证合并的链表依然是有序的。 问题分析: 我们可以使用暴力合并的方法,就是不管有多少个链表,先让第一个链表和第二个链表进行合并,合并之 阅读全文
posted @ 2019-04-10 22:55 包子的百草园 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 问题来源:选自leetcode 21:合并两个有序链表 问题描述: 题目给定信息: 给定两个有序链表,把两个链表合并成一个链表,并且合并后的链表依然是有序的。这两个链表中允许有重复元素 问题分析: 设置一个临时头节点,同时遍历两个原链表,遍历循环的条件是两个链表都不为空的情况下循环才能继续执行。每次 阅读全文
posted @ 2019-04-10 22:36 包子的百草园 阅读(137) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 17 下一页