自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 461. 汉明距离

异或运算:只有在两个比较的位不同时其结果是1,否则结果为0;即“两个输入相同时为0,不同则为1”所以异或运算又称为无进位的二进制加法。所以两个数先做异或运算,统计一下为1的个数。class Solution { public int hammingDistance(int x, int y) { int temp = x^y; int res = 0...

2020-01-31 20:46:28 54

原创 263. 丑数 & 264. 丑数 II & 313. 超级丑数

263. 丑数丑数就是只包含质因数 2,3,5的正整数。class Solution { public boolean isUgly(int num) { int temp; if(num < 0) return false; while(num != 1){ temp = num; ...

2020-01-31 20:44:03 125

原创 16. 最接近的三数之和

如果用暴力要扫描三次,O(n^3)双指针扫描,扫一次时间复杂度为O(n),外层一个循环,所以时间复杂度为O(n^2),感觉有点折半查找的意思。class Solution { public int threeSumClosest(int[] nums, int target) { Arrays.sort(nums); int ans = nums[0] ...

2020-01-30 12:22:21 83

原创 347. 前 K 个高频元素

方法很好想,要么暴力排序,归并,堆排都能满足O(nlogn)的要求。我第一次想到的就是,用哈希统计一下数字,然后重载排一下序,顺序放入集合里就行。这次用的是最小堆,主要学习一下PriorityQueue基于优先级堆的无界优先级queue 。Modifier and TypeMethod and Descriptionbooleanadd(E e) 将指定的元素插入到此...

2020-01-30 09:48:50 135

原创 659. 分割数组为连续子序列

贪心:按数字大小的顺序,尽量将当前数字与之前产生的数链连接在一起。考虑1 2 3 4 4 5 5 6这样一组数字,遍历到第二个4的时候,就应该检测能不能再组成一条新的数链,这时就把6给从count中减掉了,尽可能避免剩下短链。class Solution { public boolean isPossible(int[] nums) { Counter count =...

2020-01-29 16:06:28 191

原创 1109. 航班预订统计

法一:暴力class Solution { public int[] corpFlightBookings(int[][] bookings, int n) { int[] res = new int[n]; for (int i = 0; i < bookings.length; i++) { int begin = bookings[i][...

2020-01-29 15:15:43 345

原创 ecplise配置本地dtd约束

按照上述操作,以后写xml文件就有提示标签了(不联网也可以),以前用maven工程配的spring配置文件,tx命名空间要加载好久,直接配置在本地省好多时间。...

2020-01-23 22:08:17 93

转载 Eclipse下代码字体背景变红/变绿/变黄原因

<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-...

2020-01-23 21:52:31 363

原创 连接数据库失败原因及解决方案

连接mysql的时候被坑了好多次了,总结一下以下是Mybatis连接mysql报的错ERROR 01-23 19:01:57,762 Could not get a databaseId from dataSource (VendorDatabaseIdProvider.java:55) com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientCo...

2020-01-23 19:11:18 5891

原创 Redis学习笔记(2)

8.Redis的持久化两种策略的选择:RDB持久化方式能够在指定的时间间隔内对数据进行快照存储。AOF持久化方式记录每次对服务器的写操作,当服务器重启时会重新执行这些写命令来恢复原始的数据,AOF命令以redis协议追加保存每次写操作到文件末尾。Redis能对AOF文件进行后台重写,使得AOF文件体积不会过大只做缓存:如果希望数据在服务器运行的时候存在,也可以不使用任何持久化方...

2020-01-16 18:30:00 129

原创 Redis学习笔记(1)

我是跟着尚硅谷周阳老师的课程学习的,之前项目用过mongodb,但对redis和整个nosql都不是很熟悉,系统的学习下。1.Redis简介Redis:REmote DIctionary Server(远程字典服务器)完全开源免费,用C编写,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,别称数据结构服务器特点...

2020-01-16 14:34:27 285

原创 NoSQL理论学习

(下面的东西只是笔记,绝大部分都是尚硅谷老师讲的Redis视频内容。一是为了要部署一个项目,来突击学习一下,二是大学里就学过关系型数据库中的mysql,考试也就是多表查询,嵌套查询,难以满足当今应用。)1.出现的原因高并发的操作不太建议多表关联查询,互联网公司用冗余数据来避免关联查询。性能问题2.NoSQL的优势NoSQL(Not Only Sql)易扩展(需要存储的数据很多,以...

2020-01-14 16:35:49 189

原创 LeetCode 1116. 打印零与奇偶数

这次不用显示锁了,用个同步代码段吧,其实一样的意思。题目要求class ZeroEvenOdd { private int n; private int flag = 0; public ZeroEvenOdd(int n) { this.n = n; } // printNumber.accept(x) outputs "x", where x is an integer....

2020-01-12 14:21:52 186

原创 LeetCode 1115 交替打印FooBar

显式锁真好用╮( ̄▽ ̄")╭,以下是尚硅谷老师讲JUC时用的课件,我给粘过来了,说明一下Lock在 Java 5.0 之前,协调共享对象的访问时可以使用的机制只有synchronized 和 volatile 。Java 5.0 后增加了一些新的机制,但并不是一种替代内置锁的方法,而是当内置锁不适用时,作为一种可选择的高级功能。ReentrantLock 实现了 Lock 接口,并提供了与s...

2020-01-12 14:19:39 177

原创 LeetCode 1114. 按序打印

题目要求简单来说,就是按序打印,让A打印方法先输出,接着是B,最后是C输出。题是挺简单的,就当是巩固这几天学习的java多线程了,也熟悉一下JUC的使用。力扣只给了一个类,我在Ecplise写了一下main函数的调用,AC代码就是那个Foo类。以下是代码package multithreading;import java.util.concurrent.locks.Condition...

2020-01-12 12:44:52 169

原创 java多线程(二)

因为临界资源没有互斥访问导致的问题,操作系统已经学习的比较详细了,我再赘述。就拿老师讲的售票员卖票这个例子来简单叙述一下。package sourceconflict;public class SourceConfilct { //临界资源问题 public static void main(String[] args) { Runnable r = ()->{ w...

2020-01-11 14:28:04 90

原创 java多线程(一)

java多线程上课学的java忘得差不多了,再看看多线程吧…java语言实现了多线程机制,为什么不说是多进程的,因为进程概念是操作系统层面上的,不管OS有没有实现线程,进程都是资源调度的基本单位,线程只拥有很少的一部分资源,用于保证自己的正常运行。在一些没有实现多进程的系统上,就更不存在线程了。在多进程的系统中比如Windows操作系统,进程间的内存空间是互相独立的,数据不能直接共享,它的异步...

2020-01-10 20:51:47 92

原创 Ecplise捕捉异常的快捷键

记录一下Ecplise的捕捉异常的快捷键有的时候提示直接会给你补全,有的时候不会。如果没有提示的话,自己写的话挺麻烦的,可以直接用快捷键:将要抛出异常的部分选中,然后alt+shift按住不放,再按一下z键,选择这个就OK了。要修改模板的话,点击Configure Templates修改就好。...

2020-01-10 16:29:31 2959

原创 操作系统期末考试

终于考完试了,嘎嘎。大题四个,页表,调度算法,写一个同步互斥,SSTF。页表要画一个页表转换机制的图,调度算法是RR,PSA,SJF;同步互斥的题还挺有意思的,说是同学要去机房,机房有M台机器,机器不够要等待,上机的时候做题,做完了请老师检查,检查完正确才可以走hh。semaphore machine = M;semaphore check = 0;semaphore OK = 1;...

2020-01-08 14:38:00 798 2

原创 多生产者消费者(二)

桌上有一个只能放入一个水果的盘子,爸爸专向盘子中放苹果(apple),妈妈专向盘子中放桔子(orange),儿子专等吃盘子中的桔子,女儿专等吃盘子里的苹果 。如果有两个家庭的爸爸、妈妈、儿子、女儿和二只盘子呢?这时候应该如何改写代码办?有一个盘子的情况已经分析过了。现在看有两个家庭的情况。semaphore mutex = 1; // 用于对缓冲区的互斥操作semaphore apple...

2020-01-07 21:10:26 124

原创 N进程M资源死锁问题

某系统有同类资源m个供n个进程共享,如果每个进程最多申请x个资源(1<=x<=m),且各进程的最大需求量之和小于(m+n),试证明该系统不会发生死锁。分析:当每个进程都申请x-1个资源,这个时候如果系统没有资源了,它们中任何一个进程,如果再提出申请1个资源的要求,就会死锁。如果系统还有1个资源,就满足了提出申请资源的某一个进程,它释放所持有的x-1个资源,死锁局面被打破。所以如果系...

2020-01-07 15:17:01 11458 3

原创 2014年408统考操作系统47题 消费者变式问题

题目描述系统中有多个生产者进程和多个消费者进程,共享一个能存放 1000 件产品的环形缓冲区(初始为空)。当缓冲区未满时,生产者进程可以放入其生产的一件产品,否则等待;当缓冲区未空时,消费者进程可以从缓冲区取走一件产品,否则等待。要求一个消费者进程从缓冲区连续取出 10 件产品后,其他消费者进程才可以取产品。请使用信号量 P,V(wait(),signal())操作实现进程间的互斥与同步,要求写...

2020-01-05 16:14:15 2235 9

原创 几个进程同步问题

1.消费者-生产者semaphore empty = n; // 空闲缓冲区数量semaphore full = 0; // 产品数量semaphore mutex = 1; // 对缓冲区的互斥操作void producer(){ do{ 生产一个产品; wait(empty); wait(mutex); // 实现互斥的P操作...

2020-01-01 20:23:24 1102 3

空空如也

空空如也

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

TA关注的人

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