自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【牛客-程序员代码面试指南】不重复打印排序数组中相加和为给定值的所有二元组

描述给定排序数组arr和整数k,不重复打印arr中所有相加和为k的不降序二元组例如, arr = [-8, -4, -3, 0, 1, 2, 4, 5, 8, 9], k = 10,打印结果为:1, 92, 8[要求]时间复杂度为O(n)O(n),空间复杂度为O(1)O(1)输入描述:第一行有两个整数n, k接下来一行有n个整数表示数组内的元素输出描述:输出若干行,每行两个整数表示答案按二元组从小到大的顺序输出(二元组大小比较方式为每个依次比较二元组内每个数)示例输入:10

2022-02-13 15:49:57 128

原创 [牛客-程序员代码面试指南]最长的可整合子数组的长度

题目描述先给出可整合数组的定义:如果一个数组在排序之后,每相邻两个数的差的绝对值都为1,或者该数组长度为1,则该数组为可整合数组。例如,[5, 3, 4, 6, 2]排序后为[2, 3, 4, 5, 6],符合每相邻两个数差的绝对值都为1,所以这个数组为可整合数组给定一个数组arr, 请返回其中最大可整合子数组的长度。例如,[5, 5, 3, 2, 6, 4, 3]的最大可整合子数组为[5, 3, 2, 6, 4],所以请返回5数据范围:0 < n \le 1000000<n≤100000

2022-02-13 15:30:52 112

原创 Java SPI机制

SPI(Service Provider Interface)是Java自带的服务发现机制,通过读取写入实现类的全限定名的配置文件来加载对应类,可以在运行的时候动态为接口替换实现类示例首先声明一个接口package com.uzck.spi;public interface GreetService { String sayHi(String msg);}接下来定义两个实现类package com.uzck.spi.impl;public class EnglishGreetS

2020-11-05 11:01:57 232

原创 CopyOnWriteArrayList源码分析

CopyOnWriteArrayList源码分析作用CopyOnWriteArrayList(Copy-On-Write: 写入时复制)是一个线程安全的ArrayList,对其进行的修改操作都是先加锁然后在底层的一个复制数组上进行。优点: 经常被用于"读多写少"的并发场景,因为读取的时候不需要加锁,性能较好。读写分离,在使用迭代器迭代的时候不会抛出异常缺点: 需要拷贝原数据,数据较大的时候...

2020-04-16 23:29:21 199

原创 并查集的实现

题目描述给定一个没有重复值的整形数组arr,初始时认为arr中每一个数各自都是一个单独的集合。请设计一种叫UnionFind的结构,并提供以下两个操作。boolean isSameSet(int a, int b): 查询a和b这两个数是否属于一个集合void union(int a, int b): 把a所在的集合与b所在的集合合并在一起,原本两个集合各自的元素以后都算作同一个集合[...

2020-03-25 16:01:16 178

原创 在两个长度相等的排序数组中找到上中位数

在两个长度相等的排序数组中找到上中位数题目描述给定两个有序数组arr1和arr2,已知两个数组的长度都为N,求两个数组中所有数的上中位数。上中位数:假设递增序列长度为n,若n为奇数,则上中位数为第n/2+1个数;否则为第n个数输入为:arr1 = [1, 2, 3, 4], arr2 = [3, 4, 5, 6],输出为3输入为:arr1 = [0, 1, 2], arr2 = [3, 4...

2020-02-13 01:29:34 1066

原创 KMP算法

KMP算法KMP算法用于在文本串S内查找模式串P的出现位置 时间复杂度为O(M + N)最大长度表前缀和后缀前缀:除了最后一个字符以外,一个字符串的全部头部组合后缀:除了第一个字符以外,一个字符串的全部尾部集合前缀后缀的最长公共元素长度举例说明,假如模式串为P = "ABCABD"模式串ABCABD最大前缀后缀公共元素长度000120...

2020-02-02 11:36:42 441

原创 数组中未出现的最小正整数

数组中未出现的最小正整数题目来源《程序员代码面试指南》第八章题目描述给定一个无序数组arr,找到数组中未出现的最小正整数arr = [-1, 2, 3, 4]。返回1arr = [1, 2, 3, 4]。返回5[要求]时间复杂度为O(N)O(N)O(N),空间复杂度为O(1)O(1)O(1)思路理想情况:一个N长度的有序数组存放[1,2,...,N]这样的数组,要找出缺少的最小正...

2020-01-30 16:45:46 549

原创 LeetCode 153 Find Minimum in Rotated Sorted Array

找出有序旋转数组里的最小值假设将一个升序数组按照某个点进行旋转[0,1,2,3,4,5,6,7]可能变成[4,5,6,7,0,1,2],然后找出旋转后的数组中的最小值,数组中不含重复数值。1. 暴力法可以知道除了没有旋转的情况下,最小的数位于数组中间,因此从后面往前搜索,如果找到了nums[end-1] > nums[end],那么nums[end]就是最小的值。public int...

2019-10-08 09:07:48 124

原创 LeetCode 260 Single Number III

找出数组中只出现一次的两个数题目描述:输入一个整型数组,数组中只有两个数字只出现了一次,其他的数都出现了两次。要求找出那两个数字,对于输出结果的顺序没有要求,时间复杂度要求在线性时间且只使用常数空间1. 用Map的解法这种方法比较直接,但是不符合线性时间和常数空间的要求。遍历的时候把每个数出现的次数存储到一个map中,再遍历一遍这个map找到出现次数为1的数即可。/*** 6ms 19....

2019-10-07 20:50:36 129

原创 LeetCode739 Daily Temperatures

题目描述给出连续若干天的气温数据如[73, 74, 75, 71, 69, 72, 76, 73],输出多少天后气温会高于当天,上面例子的输出结果为[1, 1, 4, 2, 1, 1, 0, 0]。温度的范围从30到100,数据长度1到30000。蒟蒻的解法public int[] dailyTemperatures(int[] T) { int[] result = new int[T....

2019-03-20 22:07:10 213

原创 LeetCode766. Toeplitz Matrix

题意判断一个矩阵是不是Toeplitz矩阵Toeplitz矩阵需要满足的条件[123451239512] \left[ \begin{matrix} 1 &amp;amp; 2 &amp;amp; 3 &amp;amp; 4 \\ 5 &amp;amp; 1 &amp;amp; 2 &amp;amp; 3 \\ 9 &amp;amp; 5 &amp;amp; 1 &amp;am...

2019-01-16 16:03:21 248

原创 LeetCode876 Middle of the Linked List

题目原意是找一个链表的中间结点,如果中间结点有两个,取靠后的那个沙雕解法public class ListNode { public int val; public ListNode next; public ListNode(int val) { this.val = val; }}给定的是结点数据结构是这样的,因此不能直接用Java里...

2019-01-16 11:03:19 144

原创 Spring Boot整合Spring Security验证用户登录

配置只是一个小的验证登录的demo,按照网上的版本来莫名踩坑,不清楚是不是Spring版本的问题,声明下自己的配置,这是必须的两个包,数据库配置按照自己需要的来。&amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt;org.springframework.boot&amp;lt;/groupId&amp;gt; &amp;lt;artifactId&amp;gt;spring-boot

2019-01-13 15:22:36 907

原创 Java代理模式

代理模式代理模式用最简单的例子来表示就是你想定制个T恤,但你不认识加工厂,就找了个中介帮你联系加工厂,这个中介就是所谓的代理(不确定有没有委托模式这种说法)。静态代理首先定义购买接口public interface Produce { Tshirt produce(Order order);}实际的生产工厂:public class Factory implements P...

2019-01-07 17:44:19 169

原创 Android Handler机制浅析

1. Looper在讲Handler之前,首先要讲讲Looper和MessageQueue。Looper类源码的说明:Looper是用来给线程发送消息的,线程没有默认的message loop,可以通过Looper.prepare()创建线程的looper。看下prepare的代码吧private static void prepare(boolean quitAllowed) { if...

2019-01-05 18:26:16 169

原创 LeetCode905 Sort Array By Parity

Problem905 Sort Array By ParityGiven an array A of non-negative integers, return an array consisting of all the even elements of A, followed by all the odd elements of A.You may return any answer ar...

2018-12-10 15:43:45 157

原创 LeetCode 771

Problem771题目You’re given strings J representing the types of stones that are jewels, and S representing the stones you have. Each character in S is a type of stone you have. You want to know how m...

2018-12-09 20:12:52 287

原创 Spring MVC @DateTimeFormat失效

Spring MVC有自己处理表单的库,在使用时,需要在相应的JSP文件头部加上&amp;lt;%@ taglib prefix=“mvc” uri=“http://www.springframework.org/tags/form” %&amp;gt;,如果通过maven的create from archetype时,还需要加上&amp;lt;%@ page isELIgnored=&quot;false&quot;来避免使用&amp;lt;m...

2018-11-17 01:18:52 2683

原创 普通Java类获取context

场景:存储数据使用的是SharedPreferences,都知道最简单的获得SharedPreferences的方法是context.getSharedPreferences,但是我存储数据的环节放在了自定义Interceptor(okhttp3)的interceptor方法里面,这个类是无法从Activity/Fragment里获取context的,当然,可以设置一个context的属性放在构造...

2018-11-15 10:43:54 6970 1

原创 Android View的点击事件与回调函数

回调函数最简单的回调函数场景:有A类和B类,A类的C方法,B类的D方法A需要调用B类的D方法,而B类的D方法又需要调用A类的C方法,也就是相互调用。简单的回调函数使用可以参考如下代码/*** 回调函数*/public interface Callback { void meet(ScheduleTable schedule);}/**Boss类 实现CallBack...

2018-11-14 20:16:11 1117

原创 No module named _tkinter

在ubuntu16.04下使用matplotlib库显示图片时,提示no module named _tkinter,也就是说缺少tkinter这个库。也没多想先pip安装一下吧,结果提示找不到这个包。我的python版本是3.5.1,通过pyenv安装的,想着可能是安装的时候缺少了什么编译条件没编译tk这个模块。经过搜索得知需要在系统上先安装tk-dev这个库,再重新安装python即可...

2018-11-06 10:49:03 895

原创 Flutter环境配置遇到的坑

接触Android也有段时间了,Kotlin没学,错过了不少东西,然后又出了这个Flutter,号称跨平台,这么牛逼不得学学?下载下载Flutter的SDK按照官网来就好了,记得设置export PUB_HOSTED_URL=https://dart-pub.mirrors.sjtug.sjtu.edu.cnexport FLUTTER_STORAGE_BASE_URL=https://m...

2018-10-31 00:03:17 6927 4

转载 idea新建Maven工程卡在running /tmp/archetypeltmp

今天打算用idea写个maven项目时,创建到最后就一直在加载。等了大概20分钟,还在Process Running,我就等不下去了,各种查资料,最终解决了这个问题,写篇笔记,以防后期所需。解决方案:1、设置maven的配置&amp;nbsp; &amp;nbsp;File---&amp;gt;Settings(Ctrl+Alt+S...

2018-10-27 17:02:25 1313

原创 【SpringMVC】上传并显示图片

Spring配置文件上传功能基于Servelt的配置在继承了AbstractAnnotationConfigDispatcherServletInitializer的类中重写customizeRegistration方法。@Overrideprotected void customizeRegistration(ServletRegistration.Dynamic registratio...

2018-10-27 16:27:55 1324

空空如也

空空如也

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

TA关注的人

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