自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

日拱一卒,不期速成!

每天进步一点点

  • 博客(37)
  • 资源 (4)
  • 收藏
  • 关注

原创 【并发编程】生产者消费者3种方式

版本1 synchronized+notify+wait/** * @author i * @create 2019/12/29 14:57 * @Description 生产者消费者 1 版本 */class MyShareData{ private Integer count = 0;//资源 public synchronized void increme...

2019-12-29 22:22:51 333

原创 【并发编程领域】3个线程依序打印ABC

大体思路:借助juc中Lock+Condition实现,通过一个变量来标志执行哪一个线程 condition中唤醒对应的线程。ABC线程形成一个环形 A-》B-》C-》A 如此反复就可以/** * @author i * @create 2019/12/29 16:03 * @Description ABC线程每次依序打印 ABCABC循环 10次 */class MySh...

2019-12-29 22:18:35 332

原创 【并发编程领域】从volatile关键字到CAS以及ABA问题

1.volatile是什么volatile是java虚拟机提供的轻量级的同步机制 保证可见性 2.不保证原子性 3.禁止指令重排 2.JMM之可见性​ JMM(java内存模型Java Memory Model 简称JMM)本身是一种抽象的概念并不真实存在,他描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段、静态字段和构成数组对象的元素)的访问方式。JM...

2019-12-27 17:42:40 1282

原创 【数据结构与算法之美】7.排序算法之冒泡、选择、插入

package com.ncst.sort;/** * @author i * @create 2019/12/24 16:39 * @Description 排序 * 冒泡排序 */public class Sorts { /*** * 冒泡排序 * 案例: 6 5 4 3 1 2 * 第一轮 * 第一次 5 ...

2019-12-24 19:07:23 304

原创 【leetcode】23.合并K个排序链表

合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[1->4->5,1->3->4,2->6]输出: 1->1->2->3->4->4->5->61.不使用递归基本思路:我们可以使用分治思想 来解决这个问题。当一个链表集合中需要合并并排序。我们可以假设只有2个 每次合并两...

2019-12-21 20:30:05 193

原创 【leetcode】141.环形链表

给定一个链表,判断链表中是否有环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是-1,则在该链表中没有环。示例 1:输入:head = [3,2,0,-4], pos = 1输出:true解释:链表中有一个环,其尾部连接到第二个节点。1.快慢指针可以类比成两个运动员 在同一个环形运动场跑步,一个跑的快的 和 ...

2019-12-21 17:19:42 247

原创 【数据结构与算法之美】6.环形队列

package com.ncst.queue;/** * @author i * @create 2019/12/20 15:29 * @Description 环形队列 */public class CircularQueue { private String[] data;//存储数据 private Integer size = 0;//大小 priv...

2019-12-20 16:44:54 328

原创 【数据结构与算法之美】5.基于链表实现队列

package com.ncst.queue;/** * @author i * @create 2019/12/20 16:10 * @Description 基于链表实现队列 */public class QueueBaseOnLikedList { private Node head;//头结点 private Node tail;//尾结点 //入...

2019-12-20 16:43:47 226

原创 【数据结构与算法之美】4.基于数组实现队列

package com.ncst.queue;/** * @author i * @create 2019/12/20 15:14 * @Description 利用数组实现队列 * */public class ArrayQueue { private String [] data;//存储数据 private Integer size = 0;//大小 ...

2019-12-20 16:42:36 234

原创 【数据结构与算法之美】3.基于栈实现的浏览器前进和后退功能

package com.ncst.stack;import java.util.List;/** * @author i * @create 2019/12/19 21:34 * @Description * 使用前后栈实现浏览器的前进后退 * * 思路:创建两个栈空间 一个用来存储前后的页面goBackStack,一个用来记录后退的页面goForwardStack。一个...

2019-12-20 10:50:28 510

原创 【数据结构与算法之美】2.基于链表实现的栈

package com.ncst.stack;/** * @author i * @create 2019/12/19 20:56 * @Description 基于链表实现栈 */public class StackBasedOnLinkedList<T>{ private Node top;//设置一个top 用来标记栈顶 //出栈 pu...

2019-12-19 21:10:18 339

原创 【数据结构与算法之美】1. 基于数组实现的栈

1.基于数组实现的栈package com.ncst.stack;import com.ncst.array.Array;/** * @author i * @create 2019/12/19 19:47 * @Description */public class ArrayStack{ private Integer [] data;//存储数据 p...

2019-12-19 21:09:26 428

原创 【leetcode】206.反转链表

反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?//实现思路 //在遍历列表时,将当前节点的next指针改为指向前一个元素,由于节点没有引用其上一个节点,因此必须实现存储前一...

2019-12-19 16:59:32 218

原创 【数据结构与算法之美】基于单链表LRU算法

我们维护一个有序单链表,越靠近链表尾部的节点是越早之前访问的,当有一个新的数据被访问时,我们从链表头开始顺序遍历链表。** 1.如果此数据之前在缓存在链表中了,我们遍历得到这个数据对应的节点,并将其从原来的位置删除,然后在插入到链表的头部。** 2.如果此数据中没有缓存链表中,可以分为两个情况** - 如果此时缓存没满,则将此节点直接插入到链表的头部。* - 如果此时缓存已满,则...

2019-12-19 10:39:14 311

原创 【leetcode】35.搜索插入位置

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2实现思路: 使用二分查找就可以了。如果使用for循环的话,时间复杂度为O(n) 但是使用二分查找 时间复杂度就下降了很多,因此 注意边界的控制。1.当target与查询的mid...

2019-12-17 20:03:16 227

原创 【leetcode】27.移除元素

给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两个元素...

2019-12-16 16:55:50 233

原创 【lc-database】196. 删除重复的电子邮箱

编写一个 SQL 查询,来删除 Person 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个。±—±-----------------+| Id | Email |±—±-----------------+| 1 | john@example.com || 2 | bob@example.com ...

2019-12-11 16:37:03 247

原创 【数据库领域】You can't specify target table 'Person' for update in FROM clause

delete from Person where id in (select max(id) from person group by Email having count(*)>1);在练习sql时 报错。原因delete和select不能同时执行 使用笛卡尔积自关联表 筛选出条件DELETE p1.*FROM Person p1, Person p2WHERE...

2019-12-11 16:33:40 400

原创 【lc-database】183. 从不订购的客户

某网站包含两个表,Customers 表和 Orders 表。编写一个 SQL 查询,找出所有从不订购任何东西的客户。Customers 表:±—±------+| Id | Name |±—±------+| 1 | Joe || 2 | Henry || 3 | Sam || 4 | Max |±—±------+Orders 表:±—±------...

2019-12-11 16:14:19 206

原创 【lc-database】181. 超过经理收入的员工

Employee 表包含所有员工,他们的经理也属于员工。每个员工都有一个 Id,此外还有一列对应员工的经理的 Id。±—±------±-------±----------+| Id | Name | Salary | ManagerId |±—±------±-------±----------+| 1 | Joe | 70000 | 3 || 2 | He...

2019-12-11 16:13:25 281

原创 【lc-database】175.组合两个表

表1: Person±------------±--------+| 列名 | 类型 |±------------±--------+| PersonId | int || FirstName | varchar || LastName | varchar |±------------±--------+PersonId 是上表主键...

2019-12-11 16:11:18 195

原创 【lc-database】620 有趣的电影

某城市开了一家新的电影院,吸引了很多人过来看电影。该电影院特别注意用户体验,专门有个 LED显示板做电影推荐,上面公布着影评和相关电影描述。作为该电影院的信息部主管,您需要编写一个 SQL查询,找出所有影片描述为非 boring (不无聊) 的并且 id 为奇数 的影片,结果请按等级 rating 排列。例如,下表 cinema:±--------±...

2019-12-11 16:10:04 383

原创 【lc-database】595. 大的国家

这里有张 World 表±----------------±-----------±-----------±-------------±--------------+| name | continent | area | population | gdp |±----------------±-----------±--------...

2019-12-10 16:36:39 190

原创 【lc-database】182.查找重复的电子邮箱

编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱。示例:±—±--------+| Id | Email |±—±--------+| 1 | a@b.com || 2 | c@d.com || 3 | a@b.com |±—±--------+根据以上输入,你的查询应返回以下结果:±--------+| Email |±-----...

2019-12-10 16:21:40 336

原创 【lc-database】596.超过5名学生的课

有一个courses 表 ,有: student (学生) 和 class (课程)。请列出所有超过或等于5名学生的课。例如,表:±--------±-----------+| student | class |±--------±-----------+| A | Math || B | English || C ...

2019-12-10 16:04:54 249

原创 【lc-database】176. 第二高的薪水

1.176. 第二高的薪水编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。±—±-------+| Id | Salary |±—±-------+| 1 | 100 || 2 | 200 || 3 | 300 |±—±-------+例如上述 Employee 表,SQL查询应该...

2019-12-10 15:26:17 217

原创 【数据库领域】推荐一个不错的sql在线练习平台 还不错

中文版:http://xuesql.cn英文版:https://sqlbolt.com

2019-12-09 21:20:28 1197

原创 【数据库领域】select子句顺序

子句 说明 是否必须使用 select 要返回的列或表达式 是 from 从中检索数据的表 仅在从表选择数据时使用 where 行级过滤 否 group by 分组说明 仅在按组计算聚集时使用 having 组级过滤 否 order by 输出排序顺序 否 limit 要检索的...

2019-12-09 17:54:39 307

原创 【数据库领域】where与Having的区别

1.where过滤行 having过滤分组2.where在数据分组前进行过滤,having在数据分组后进行过滤。 where排除的行不包括在分组中,这可能会在改变计算值,从而影响having子句中基于这些值过滤掉的分组。...

2019-12-09 17:40:23 242

原创 【数据库领域】mysql中数据处理函数

1、文本处理函数Left() 返回串左边的字符串 Length() 返回串的长度 Locate() 找出串中的一个子串 Lower() 将串转换成小写 LTrim() 去掉串左边的空格 Right() 返回串右边的空格 RTrim() 去掉串右边的空格 Soundex() 返回串的SOUNDEX的值 Upper()...

2019-12-09 17:07:33 272

原创 【数据库领域】mysql 正则表达式使用

1.基本字符匹配 . 表示匹配任意一个字符。2.进行OR匹配 | 为正则表达式的OR操作,表示匹配其中之一。3.匹配几个字符串 [123] tom 等价于 [1|2|3] tom的缩写4.匹配范围 [1-9] tom 表示1-9之间任意一个数字。5.匹配任意字符 ...

2019-12-08 21:28:09 271

原创 【数据库领域】通配符注意事项

虽然%通配符可以匹配任何东西,null是一个例外。通配符搜索的处理一般要比前面讨论的其他搜索所花时间更长,不要过度使用通配符,如果其他操作符能达到相同的目的,应该使用其他操作符。 在确定使用通配符的情况下,除非必要,否则,不要将他们用在搜索模式的开始处,把通配符置于搜索模式的开始处,搜索起来是慢的。...

2019-12-08 21:01:10 493

原创 【数据库领域】mysql中in与or对比

通过观察可以发现使用where xx in(xx) 也可以使用or xx 来完成。 在字段较多的时候,使用in操作符更加直观。 in操作符一般比or操作符执行速度更快 in的最大优点就是可以包含其他的select子句,更加具有动态性 ...

2019-12-08 20:41:35 1022

原创 【数据库领域】mysql中区分大小和排序顺序

测试数据。为了测试在使用order by 进行排序 对于 AB ab的顺序,进行测试。可以发现mysql字典排序中,A被视为与a相同,是mysql默认行为。

2019-12-08 20:10:09 448

原创 【数据库领域】索引和约束区别

当用户创建了一个唯一索引和一个唯一约束后,但是约束和索引的概念还是有所不同的 约束是一个逻辑的概念,用来保证数据的完整性。 索引是一个数据结构,既有逻辑上的概念,在数据库中还代表着物理存储的方式。 ...

2019-12-04 11:31:11 790

原创 【计算机网络】四次握手

以下描述不讨论序号和确认号,因为序号和确认号的规则比较简单。并且不讨论 ACK,因为 ACK 在连接建立之后都为 1。A 发送连接释放报文,FIN=1。B 收到之后发出确认,此时 TCP 属于半关闭状态,B 能向 A 发送数据但是 A 不能向 B 发送数据。当 B 不再需要连接时,发送连接释放报文,FIN=1。A 收到后发出确认,进入 TIME-WAIT 状态,等待 2 MSL(最大报...

2019-12-01 22:18:44 403

原创 【计算机网络】三次握手

假设A为客户端,B为服务端。首先B处于LISTEN(监听)状态,等待客户的连接请求。A向B发送连接请求报文,SYN=1,ACK=0 选择一个初始的序号XB收到连接请求,如果同意建立连接,则向A发送连接确认报文,SYN=1,ACK=1 确认号为1,同时也选择一个初始的序号Y。A收到B的连接确认序号后,还要向B发出确认,确认号为Y+1 序号为x+1B收到A的确认后,连接建立。三次握手的原...

2019-12-01 22:14:47 475

Java校招路线.mmap

Java校招路线.mmap

2020-03-25

SpringCloud.mmap

springcloud周阳思维导图

2020-02-24

微机原理与接口技术ppt

《微机原理》是一门专业基础课程,它的主要内容包括微型计算机体系结构、8086微处理器和指令系统、汇编语言设计以及微型计算机各个组成部分介绍等内容。要求考生对微机原理中的基本概念有较深入的了解,能够系统地掌握微型计算机的结构、8086微处理器和指令系统、汇编语言程序设计方法、微机系统的接口电路设计及编程方法等,并具有综合运用所学知识分析问题和解决问题的能力。

2018-11-01

空空如也

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

TA关注的人

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