自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(130)
  • 资源 (2)
  • 收藏
  • 关注

原创 剑指offer刷题详细分析:part13:61题——67题

目录Number61:Number62:二叉搜索树的第k个结点Number63:Number64:Number65:Number66:Number67:题目62  题目描述:给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。  分析:二叉搜索树具有左小右大的有序特性,对它进行中序遍...

2020-07-12 14:43:46 531

原创 剑指offer刷题详细分析:part12:56题——60题

目录Number56:Number57:Number58:对称的二叉树Number59:Number60:把二叉树打印成为多行题目58  题目描述:请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。  分析:首先分析下这个对称二叉树,也就是一个二叉树中间对称。所以我们可以使用递归的思想,首先以根节点以及其左右...

2020-07-12 14:43:09 273

原创 剑指offer刷题详细分析:part11:51题——55题

目录Number51:Number52:Number53:Number54:字符流中第一个不重复的数字Number55:题目54  题目描述:请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。  输出描述:如果当前字符流没有存在出现一次的字符,返回#字符。方法1:使用HashMap实现 (不推荐)  分析:最直观的...

2020-07-12 14:42:45 288

原创 剑指offer刷题详细分析:part10:46题——50题

题目50 数组中重复的数字  题目描述:  在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。方法1:从第一个数字开始,对比后面的数字进行查找  这是最笨的方法,就是从第一...

2020-07-12 14:42:18 674

原创 剑指offer刷题详细分析:part9:41题——45题

目录Number41:Number42:和为S的2个数字Number43:Number44:Number45:题目42  题目描述:输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。  输出描述:对应每个测试案例,输出两个数,小的先输出。  分析:可以使用暴力遍历法(O(n^2)),不推荐...

2020-07-12 14:40:35 342

原创 剑指offer刷题详细分析:part8:36题——40题

目录Number36:Number37:Number38:Number39:Number40:数组中只出现一次的数字题目40  题目描述:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。方法1(推荐)  首先,对于异或运算,有如下规则:a^a = 0;a^0 = a;a^b^c = a^(b^c) = (a^b)^c...

2020-07-12 14:40:07 270

原创 剑指offer刷题详细分析:part7:31题——35题

目录Number31:整数中1出现的次数(从1到n整数中1出现的次数)Number32:Number33:Number34:Number35:题目31 整数中1出现的次数(从1到n整数中1出现的次数)  题目描述:求出113的整数中1出现的次数,并算出1001300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,...

2020-07-12 14:39:47 227

原创 剑指offer刷题详细分析:part6:26题——30题

目录Number26:Number27:Number28:Number29:Number30:连续子数组的最大和题目30 连续子数组的最大和  题目描述:HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负...

2020-07-12 14:39:08 177

原创 剑指offer刷题详细分析:part5:21题——25题

目录Number21:Number22:从上往下打印二叉树Number23:Number24:Number25:题目22  题目描述:从上往下打印出二叉树的每个节点,同层节点从左至右打印。  分析:这是二叉树的层序遍历(广度优先遍历),我们使用一个队列来辅助。public ArrayList<Integer> PrintFromTopToBottom(T...

2020-07-12 14:38:32 378

原创 剑指offer刷题详细分析:part4:16题——20题

目录Number16:Number17:Number18:Number19:Number20:包含min函数的栈题目20  题目描述:定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。  注意:1)保证测试中不会当栈为空的时候,对栈调用pop()或者min()或者top()方法;2)min方法的时间复杂度应该为O...

2020-07-12 14:38:03 224

原创 剑指offer刷题详细分析:part3:11题——15题

题目11 二进制中1的个数  题目描述:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。方法1:采取每一位与1然后右移的方法(推荐)  说明:使用无符号右移,不管输入的数是正数还是负数,都使用无符号右移,最高位都会补0。如果采用有符号的右移,负数最高位补1,导致while循环陷入死循环。public static int NumberOf1_1(int n) { ...

2020-07-12 14:37:05 202

原创 剑指offer刷题详细分析:part2:6题——10题

目录Number6:旋转数组的最小数字Number7:Number8:Number9:Number10:题目6 旋转数组的最小数字  题目描述:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的...

2020-07-12 14:36:39 261

原创 剑指offer刷题详细分析:part1:1题——5题

题目1 二维数组查找  题目描述:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。  分析:如下图,我们知道,只能从左下角或者从右上角入手,输入的数大于当前数就往右走,小于当前的数就往上走。  我们从左上角开始遍历,代码如下:public...

2020-07-12 14:36:13 271

原创 慕课网liuyubobobo老师课程学习笔记---part13:哈希表

1、哈希表基础  参考LeetCode第387号问题:给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。提示:你可以假定该字符串只包含小写字母。  这种方法的时间复杂度是O(n)public int firstUniqChar(String s) { int[] freq = new int[26]; //先将字符串中各个字母出现的频率存储到freq数组(数组下标对应字母在ASCII表中26个小写字母中的位置) ..

2020-07-02 23:49:02 423

原创 慕课网liuyubobobo老师课程学习笔记---part12:红黑树

1、红黑树与2-3树2、树的绝对平衡性  2-3树在添加结点的时候,新的结点永远不会添加到空的位置,而只会我们最后找到的叶子结点做融合。1)对于根结点是4结点的时候(4结点一个结点内有3个元素,2-3树每个结点只能有1或2个元素),我们可以直接将4结点分为一颗子树(由3个2结点组成的树,即每个结点只有一个元素)。2)对于叶子结点来说,如果该叶子结点因为添加一个元素,从3结点变成4结点,我们先将该结点拆分为由3个2结点组成的树,再将这颗树的根结点与其父节点融合成为一个3结点(如果父..

2020-07-01 22:48:41 461

原创 慕课网liuyubobobo老师课程学习笔记---part11:AVL

1、平衡二叉树和AVL树2、旋转操作的基本原理  下面介绍的是AVL树实现自平衡的机制!3、LR与RL的不平衡情况4、AVL树的删除  AVL树中添加元素可能导致整棵树变得不平衡,删除某个元素也是一样的,可能使得整棵树变得不平衡!  AVL树相应的代码如下:package com.lkj;import java.util.ArrayList;/**AVL平衡二叉树其实就是在之前的二分搜索树的基础上实现的,其实就是在二分搜索树的..

2020-06-30 22:31:12 585 2

原创 慕课网liuyubobobo老师课程学习笔记---part10:并查集

1、什么是并查集2、Quick Find  

2020-06-24 23:45:57 280

原创 慕课网liuyubobobo老师课程学习笔记---part9:字典树Trie

  LeetCode第208、211、677号问题,实现Trie,参考本文 Trie 的实现。  Trie 的实现package com.lkj;import java.util.TreeMap;/**我们这里不设置Trie的泛型,因为我们默认使用Trie来处理字符串,只需要存储char字符即可。 事实上Trie可以处理各种语言的字符,那样需要我们设置泛型等重新定义Trie。 */public class Trie{//---------------------...

2020-06-23 02:26:57 378

原创 计算机基础——操作系统:提升

1、导学  前面所学的“生产者-消费者问题”以及“哲学家问题”,他们都要访问临界资源,在某些情况下会出现问题,因此我们必须要进行线程以及进程的同步。2、线程同步之互斥量  注意,互斥锁是给临界资源加锁,即一个线程在操作临界资源的时候,就给这个临界资源加锁,此时其他的线程不能操作这个临界资源。3、线程同步之自旋锁4、线程同步之读写锁  我们在读取临界资源的时候,即使多线程同时在读取,也不会产生线程同步的问题。但是如果多个线程同时对临界资源进行写操作(即改变..

2020-06-12 22:44:25 182

原创 计算机基础——操作系统:基础part3

  前面说到操作系统的:进程、存储、作业管理,下面是文件管理:13、操作系统的文件管理14、Linux文件基本操作  这部分参考自己文章《黑马就业班(02.JavaWeb+项目实战\17.Linux)Linux》15、Linux的文件系统  在计算机中,文件系统(file system)是命名文件及放置文件的逻辑存储和恢复的系统。16、操作系统的设备管理  ...

2020-06-12 02:08:41 168

原创 计算机基础——操作系统:基础part2

  前面说到操作系统的五大功能,前面已经介绍了进程管理,下面介绍作业管理。7、作业管理之进程调度  首先,区分进程同步与进程调度。1)进程同步:当多个进程竞争访问资源(这些资源为临界资源)的时候,由于临界资源无法同时被同一个进程访问,因此需要对进程使用资源的顺序进行协调。为了避免一个进程还没有执行完,另一个进程就开始获取资源执行(临界资源必须在一个进程使用完释放后,另一个进程才可以获取使用),需要对进程进行同步,使得一个进程执行使用完资源后,另一个进程才可以开始执行使用资源。相比之下,如果是异步..

2020-06-12 01:52:56 157

原创 计算机基础——操作系统:基础part1

1、章节导学2、操作系统概览  下面是操作系统的基本功能:  下面是操作系统的相关概念:3、进程管理之进程实体4、进程管理之五状态模型5、进程管理之进程同步  上图就是生产者进程与消费者进程并发执行,导致出错。  下面介绍进程间的同步的4个原则。...

2020-06-10 19:46:11 177

原创 计算机基础——计算机网络:应用层

1、导学2、DNS详解3、DHCP协议4、HTTP协议详解5、HTTP的工作结构6、HTTPs协议详解

2020-06-09 02:08:47 161

原创 计算机基础——计算机网络:传输层

1、导学2、UDP协议详解  下面是UDP协议的特点:3、TCP协议详解  下面是TCP协议的特点:4、可靠传输的基本原理  连续ARQ协议2个重要特点:滑动窗口、累计确认5、TCP协议的可靠传输6、TCP的流量控制7、TCP协议的拥塞控制8、TCP连接的三次握手与四次挥手(重要)  这部分参考自己的文章:...

2020-06-08 22:46:56 182 1

原创 计算机基础——计算机网络:网络层

1、导学2、IP协议详解  下面是以太网协议(数据链路层)的数据的格式:  下面是IP协议(网络层)的数据的格式:3、IP协议的转发流程  下面介绍IP协议的转发流程:4、ARP协议与RARP协议  在OSI模型中ARP协议属于链路层;而在TCP/IP模型中,ARP协议属于网络层  前面结点就是通过查询ARP缓存表,来根据下一跳的IP地址找到下一跳的设备的MAC地址!5、子网划分..

2020-06-07 01:38:54 287 1

原创 计算机基础——计算机网络:概述+ 物理层+ 数据链路层

1、导学1)什么是计算机网络?  计算机网络主要由一些通用的、可编程的硬件互连而成,通过这些硬件,可以传送不同类型的数据,并且可以支持广泛和日益增长的应用。  ◆计算机网络不仅仅是软件概念,还包含硬件设备  ◆计算机网络不仅仅是信息通信,还可以支持广泛的应用2)计算机网络分类2、计算机网络发展简史3、计算机网络的层次结构4、现代互联网的网络拓扑5、计算机网络的性能指标6、物理层  下面是信道的基..

2020-06-05 01:51:33 184

原创 CRC循环冗余校验---模2除法解析

  关于模2除法,网上的人说了一大堆规则和原理,感觉很容易把小白绕进去,下面我只说怎么计算,不说其中的规则和原理。

2020-06-05 00:34:41 832

原创 黑马就业班 —— SpringBoot框架

学习目标:能够理解Spring的优缺点能够理解SpringBoot的特点能够理解SpringBoot的核心功能能够搭建SpringBoot的环境能够完成application.properties配置文件的配置能够完成application.yml配置文件的配置能够使用SpringBoot集成Mybatis能够使用SpringBoot集成Junit能够使用SpringBoot集成SpringData JPA1、Spring的优缺点分析  参考视频3,文档。优点  Sprin..

2020-05-15 22:01:15 754

原创 慕课网liuyubobobo老师课程学习笔记---part8:线段树

1、线段树介绍2、线段树的基础表示3、创建线段树、线段树区间查询  线段树实现的代码如下:package com.lkj;public class SegmentTree<E>{ /* 使用一个数组表示区间. 首先,用户可能要获取区间内某一个的元素,或者获取区间的某一个属性,我们在线段树中创建数组,作为区间数组的的副本,用于给出区间数组的某些属性; 其次,我们想将data数组内的元素(arr数组区间传递进来的)组..

2020-05-13 19:28:17 299

原创 黑马就业班——版本控制工具:svn与git

SVN1、svn介绍  SVN是Subversion的简称,是一个自由开源的版本控制系统。  Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况,这样就可以借此将数据恢复到以前的版本,并可以查看数据的更改细节。  早期版本控制使用的是CVS,后来SVN替代了CVS,随着android兴起,出现Git版本控制工具。  svn基本概念、svn架构,参考文档:1.SVN介绍 以及 视频1,2。2、svn的使用  本章...

2020-05-11 18:28:55 317

原创 黑马就业班——Maven项目管理工具的高级应用

今天的内容:maven高级应用1 maven基础回顾;2 maven传统的web工程做一个数据查询操作;3 maver工程拆分与聚合的思想4,把第二阶段做好的web工程修改成 maven拆分与聚合的形式;5,私服【远程仓库】;6,如何安装第三方jar包。【把第三方jar包安装到木地仓库,把第三方ja包安装到私服。】;0、Maven 基础  参考文档《Maven 基础课程第一天》,第一天视频以及之前的笔记《黑马就业班(02.JavaWeb+项目实战\15.Maven基础)包含IDEA的一..

2020-05-09 06:41:23 442

原创 黑马就业班——SpringMVC框架:part3 SSM三大框架整合(重要!)

后面SSM开发参考本文的搭建1、搭建整合环境  整合思路:参考视频1。1、我们一定是使用Spring框架去整合另外两个框架;2、使用配置文件+注解的方式进行整合(哪个方便使用哪个);3、搭建框架的时候,我们必须保证Spring、SpringMVC、Mybatis3个框架能够单独使用。  搭建开发环境:具体过程参考视频2,《大纲笔记》——第一章:搭建整合环境。代码参考项目:SSM。...

2020-05-07 02:09:29 392

原创 慕课网liuyubobobo老师课程学习笔记---part7:优先队列和堆

1、什么是优先队列2、堆的基础表示  二叉堆的2个性质:  下面介绍二叉堆的实现技巧:使用数组存储二叉堆(当然,也可以像前面的二分搜索树那样,通过左右指针的指定某个结点的左右孩子)3、二叉堆的各类操作  代码如下:package com.lkj;//同样,二叉堆也是树,它里面的结点的值也必须要具有比较性,因为我们规定每一个结点的值必须大于等于它的孩子结...

2020-04-30 02:12:13 425

原创 慕课网liuyubobobo老师课程学习笔记---part6:集合与映射

1、集合基础以及基于二分搜索树的集合实现  集合与映射(Set and Map)是高层的数据结构,什么是高层的数据结构?例如之前的 栈、队列,这些数据结构的底层实现可以是多种多样的,可以是动态数组,也可以是链表,这样的数据结构就是高层的数据结构。目前为止:底层的数据结构:数组、链表、二分搜索树高层的数据结构:栈、队列、集合与映射  二分搜索树实现集合(很简单,直接使用二分搜索树的...

2020-04-28 00:06:50 530

原创 慕课网liuyubobobo老师课程学习笔记---part5:二分搜索树

1、树结构的介绍  见视频1解析。2、二分搜索树的基础  二叉树的介绍如下:  二分搜索树的介绍  注意,我们二分搜索树存储的元素必须具有可比较性,为了是存储的元素对象具有可比较性,元素类必须实现Comparable<E>接口,并复写接口的 compareTo(Object obj)方法以实现比较性。关于前序、中序、后序遍历的总结如下,注意理解...

2020-04-27 00:17:43 432 1

原创 黑马就业班——SpringMVC框架:part2

1、响应数据和结果视图1.1 Controller控制器类方法的返回值类型  参考项目:springmvc_day02_01_response 。  controller控制器类的方法可以返回:字符串、void、ModelAndView对象  注意:1、success.jsp标签记得加:isELIgnored="false"属性,否则在jsp文件无法使用EL表达式!如:<%@...

2020-04-20 09:33:51 251

原创 使用传统方式上传文件到服务器、使用SpringMVC上传文件到服务器、使用SpringMVC跨服务器上传文件三种方式上传过程中出现的bug总结!!

  最近通过某马的java教程学java,在学习到SpringMVC文件上传的时候,出现了一些问题,花了我很多时间,特此总结。1 传统方式上传  出现的问题如下:1)我第一次使用传统方式上传,可以成功实现上传。但是我在使用SpringMVC的方式实现文件上传服务器的时候,在 springmvc.xml 中配置了 SpringMVC 的配置文件解析器对象 CommonsMultipartR...

2020-04-19 23:05:02 265 1

原创 黑马就业班——SpringMVC框架:part1(包含将Maven的web项目部属到Tomcat的2种方式)

1、SpringMVC的基本概念  参考文档第一章——第1章 SpringMVC 的基本概念,以及视频1的解析。2 、SpringMVC 的入门案例(重要!)  参考视频:视频3—,参考项目:springmvc_day01_01_start。必须将SpringMVC的开发步骤记住!  首先,搭建SpringMVC的开发环境:见视频4解析,见项目 springmvc_day01_01_...

2020-04-17 16:05:06 233

原创 慕课网liuyubobobo老师课程学习笔记---part4:链表和递归(递归很重要!)

1、LeetCode第203题解析移除链表元素  题目描述:删除链表中等于给定值 val 的所有节点。示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5  代码如下:package com.lkj.Problem203;//第203:移除链表元素/* ...

2020-04-14 02:15:10 368

原创 黑马就业班——Spring框架:part4 -- spring中的JdbcTemlate以及Spring事务控制

本文参考文档:《Spring5第三天.pdf》本文代码项目:(路径:G:\idea_java_project\)本文大部分内容参考上面项目的代码!!!今日内容1、spring中的JdbcTemplate 2. 作业:spring基于AOP的事务控制3. spring中的事务控制:基于XML的,基于注解的 1、spring中的JdbcTemplate  参考文档–第1...

2020-04-10 23:43:16 211

Blockchainfor Secure and Efficient Data Sharing in Vehicular

《Blockchain for Secure and Efficient Data Sharing in Vehicular Edge Computing and Networks》资源

2019-06-03

Bolton的《合同理论》(Contract Theory)高清中文文字版 ed 2017.pdf

Bolton的《合同理论》(Contract Theory)高清中文文字版,最近在看区块链相关论文的时候总是看到合同理论,找到资源分享给各位!

2019-05-29

空空如也

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

TA关注的人

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