自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Makefile

http://www.ruanyifeng.com/blog/2015/02/make.htmlhttps://www.gnu.org/software/make/manual/html_node/Special-Targets.html#Special-Targetshttps://www.gnu.org/software/make/manual/html_node/Suffix-Rules.html#Suffix-Ruleshttps://seisman.github.io/how..

2020-09-30 16:11:11 173

原创 maven打包依赖问题

参考:https://www.cnblogs.com/dzblog/p/6913809.html <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <appendAssemblyId>false</appendAssemblyId>

2020-09-23 18:13:04 238

原创 JAVA线程池处理for循环

参考:https://blog.nowcoder.net/n/eb5f3aa25f004069b79a47ecf6156275 public String list2Str(List<String> list, final int nThreads) throws Exception { if (list == null || list.isEmpty()) { return null; } StringBu

2020-09-23 18:11:59 1516

原创 线程池原理

https://tech.meituan.com/2020/04/02/java-pooling-pratice-in-meituan.htmlhttps://www.jianshu.com/p/9d03bf5ed5cdhttps://juejin.im/post/6844903756836896776生产者消费者模型,将线程和任务两者解耦,并不直接关联,从而良好的缓冲任务,复用线程...

2020-08-31 17:39:06 101

原创 Cookie, Session, Request

cookie 和 session:https://juejin.im/entry/6844903434366222350https://juejin.im/post/6844903952157245453session 和 Request:https://blog.csdn.net/xsc_c/article/details/12911037session:https://blog.csdn.net/qq_15096707/article/details/74012116登录https:/.

2020-08-31 16:15:53 95

原创 parseInt()

JDK源码: public static int parseInt(String s, int radix) throws NumberFormatException { /* * WARNING: This method may be invoked early during VM initialization * before IntegerCache is initialized. Care must

2020-08-29 09:36:19 86

原创 MySQL中的日志、事务

https://www.cnblogs.com/wy123/p/8365234.html

2020-08-16 17:10:02 69

原创 分布式锁

https://mp.weixin.qq.com/s?__biz=MzU5ODUwNzY1Nw==&mid=2247484155&idx=1&sn=0c73f45f2f641ba0bf4399f57170ac9b&scene=21#wechat_redirecthttp://arick.net/content/12https://www.cnblogs.com/moxiaotao/p/10829799.htmlhttps://zhuanlan.zhihu.com/p/7

2020-08-16 17:09:40 77

原创 四则表达式

如果能转换为 逆波兰 表达式,那么每次遇到操作符,弹出两个数运算即可关于如何转 逆波兰 表达式:1.如果遇到操作数,则直接输出。2.如果遇到操作符,则检查栈顶元素优先级,如果其优先级不低于当前操作符(左括号除外),则弹出栈顶元素并输出。重复此过程直到栈顶元素优先级小于当前操作符或为左括号,或者栈为空。 然后将当前操作符压入栈中。3.如果遇到左括号,直接压入栈中。4. 如果遇到右括号,则将栈中元素弹出,直到遇到左括号为止。左括号只弹出栈而不输出。5.表达式处理完毕,则将栈中元素依次弹出。注意只

2020-07-17 11:08:20 101

原创 leetcode买股票

121. 买卖股票的最佳时机只能买一次当前价格减最低价即可class Solution { public int maxProfit(int[] prices) { if (prices==null || prices.length==0)return 0; int minVal = prices[0]; int maxVal = Integer.MIN_VALUE; for (int i=0;i<pri

2020-07-11 15:19:09 106

原创 修改Integer的值

参考:https://blog.csdn.net/Synlla1119/article/details/94434401package reflect;import java.lang.reflect.Field;public class IntegerTest { public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException { Integer i =

2020-07-07 23:28:19 490

原创 JVM

synchronized锁用synchronize标记的代码编译为字节码后,会发现包含一个monitorenter和monitorexit指令,进入该方法是,会执行monitorenter,而在退出该方法时,不管是否正常退出,均需要进行monitorexit操作monitorenter 和 monitorexit 操作所对应的锁对象是隐式的,每个锁对象拥有一个锁计数器和一个指向持有改锁的线程的指针;计数器为了可重入当执行monitorenter方法时,如果目标对象的锁计数器为0,JVM会将该锁对象

2020-07-07 00:34:28 111

原创 try finally 中的return

finally 语句的return会覆盖try的return,一般不把return写到finally中,可以写到括号最外面发生异常的时候,在finally 中 修改 try 中 变量的值会起作用finally语句是在try的return语句执行之后,return返回之前执行, return语句先执行了但并没有立即返回,等到finally执行结束后再catch 中 return, 与 try中 return 类似package tryFinally;public class FinallyTe.

2020-07-05 22:30:12 932

原创 Fork/Join练习

Fork是对任务的分解,Join对应结果合并Fork/Join计算框架主要包含两部分,一部分是分治任务的线程池ForkJoinPool,另一部分是ForkJoinTask。类似ThreadPoolExecutor和Runnable的关系。ForkJoinTask有两个子类-- RecursiveAction和RecursiveTask,都定义了抽象方法compute() ,RecursiveTask的compute()有返回值。ForkJoinPool工作原理:内部有多个 工作队列, 当调用 Fo.

2020-06-26 13:47:49 236

原创 负载均衡算法实现

目录随机加权随机 (区间)轮询加权轮询 (取余,区间)加权轮询,平滑一致性哈希import java.util.Arrays;import java.util.HashMap;import java.util.List;import java.util.Map;public class ServerIPs { public static final List<String>LIST = Arrays.asList( "192.168.0.1",

2020-06-20 17:06:03 183

原创 git本地代码与github仓库合并

在GitHub 上新建一个仓库,new responsitity 点击,即可git remote add origin [email protected]:flexibility2/leyou.gitgit pull origin master可能会报错:The “fatal: refusing to merge unrelated histories” Git error此时,git pull origin master --allow-unrelated-historiesgit pull ori.

2020-06-07 15:46:19 554

原创 商城练手项目记录

在搭建工程的时候,需要remove掉子model,要注意parent模块里面注册了改字modle是否删掉了。maven模块是灰色的,无法导入相关的注解包,参考:https://www.cnblogs.com/Jimc/p/10165372.html,在Maven的setting里面,注意下ignoreFile…...

2020-05-24 23:34:30 136

原创 Spring 动态注册一个对象到容器中(模拟Mybaits中的MapperScanner)

利用 imporBeanDefinitionRegistrar 得到 registrar回归主题场景如下:一个 Service 中 @Autowried 了一个 接口 Dao,将 Dao 接口变为对象 --> 动态代理public class MyImportBeanDefinitionRegistrar implements ImportBeanDefinitionRe...

2020-05-06 23:01:36 229

原创 Learning Embedding Adaptation for Few-Shot Learning

Abstractby learning an instance embedding function from seen classes, and apply the function to instances from unseen classes with limited labels.usually learn a discriminative instance embedding m...

2020-05-05 12:02:10 604 1

原创 IDEA 2019.3 编译 Spring 5.3.0-SNAPSHOT

工具:IDEA 2019.3 专业版Gradle 6.3配置Gradle 6.3官网下载最新gradle解压在系统变量中,添加如下设置:在 PATH 路径中,添加 %GRADLE_HOME%\bin;编译Spring5.2在github上下载 spring5.2参考:https://my.oschina.net/u/3399692/blog/3237781配置gr...

2020-05-04 22:23:45 618 1

原创 先增后减数组求最大,先减后增数组求最小

注意到数组的特性,利用好即可参考:https://blog.csdn.net/liuweiyuxiang/article/details/100905327?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&utm_source=distribute.pc_relevant.n...

2020-04-20 00:02:32 479

原创 归并排序 递归与非递归实现

package MergeKsort;class Test{ public void merge(int []arr,int left, int mid,int right) { int i = left; int j= mid+1; int n = right - left + 1; int []tmp ...

2020-04-19 18:15:18 85

原创 为什么用单例模式

参考:https://www.jianshu.com/p/4f852ec7ac8b管理资源的,如连接池,线程池Spring bean 单例线程安全问题:https://blog.csdn.net/liuxiao723846/article/details/78302363

2020-04-12 22:09:36 60

原创 HashMap && ConcurrentHashMap

线程安全问题:https://www.zhihu.com/question/28516433在使用迭代器过程中出现并发操作,可能报concurrentModificationException存储结构解决冲突put操作判断key是否为null确定桶下标 indexfor( hash(key) )判断key 是否已经存在不存在加入新节点resize()头插法resiz...

2020-04-12 12:06:06 80

原创 红黑树与跳表

先分析一波红黑树吧。。根节点到任意一个叶子节点所经过的节点数量是相同的每个节点或者是红色,或者是黑色(定义)根节点一定是黑色的(对应2-3树的2节点和3节点)空节点是黑色的如果一个节点是红色的,那么它的孩子节点都是黑色的根节点到任意一个叶子节点所经过的黑节点个数是一样的,即红黑树是一颗保持黑平衡的二叉树,不是平衡二叉树,但左右子树的黑色节点保持绝对的平衡,增删改查复杂度 O...

2020-04-12 09:46:13 2822

原创 java排序

归并排序复杂度分析:递归树高logn,每一层需要O(n)复杂度,故为nlogn快排:堆排序:从非叶子节点下沉交换收尾,数量-1, 将头下沉package sort;import java.util.ArrayList;import java.util.Arrays;import java.util.List;class sort1{ private in...

2020-03-16 09:38:33 63

原创 java单例模式

参考:https://blog.csdn.net/u011595939/article/details/79972371package singleton;// 饿汉式class sigleton1 { private sigleton1(){}; private static final sigleton1 instance =new sigleton1(); ...

2020-03-15 18:18:48 47

原创 java死锁代码

死锁产生的四个必要条件:资源互斥:一个资源只能被一个线程使用循环等待:若干线程形成头尾相接的循环等待关系不可剥夺:线程已经获取的资源,在未使用完之前,不能强行剥夺请求与保持:一个线程因请求资源而阻塞时,对已经占有的资源保持不放java 死锁:package MutileThread;class deadLock implements Runnable{ String...

2020-03-15 17:48:49 144

原创 Java自己实现阻塞队列

阻塞队列:当队列为空时,获取操作是阻塞的;当队列为满时,添加操作是阻塞的判断是否满足阻塞条件,并用条件变量阻塞加锁,同一时刻只有一个线程进行操作(put/get);package MutileThread;import java.util.Collections;import java.util.LinkedList;import java.util.List;import j...

2020-03-15 17:02:19 287

原创 三个线程按照顺序打印

package MutileThread;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;class RResource2 { private int flag ...

2020-03-15 16:08:30 104

原创 两个线程交替打印奇偶数

package MutileThread;import java.util.concurrent.TimeUnit;class Resource11 implements Runnable{ private int cnt = 0; Object lock = new Object(); @Override public void run() ...

2020-03-15 15:44:00 57

原创 KMP算法小结

其核心在于:next数组理解next数组得首先明白某个字符的最大前缀和最大后缀的定义:abcabcYX对于最后一个字符Y而言,其最大前缀abc,最大后缀abc,那么X的next值为3这个字符的next数组为:-1,0,0,0,1,2,3,0next数组的球法:核心思路是cn不断往前跳,每跳一次,判读b与跳到的字符是否相同有了next数组,则从长数组的当前值和短字符串中...

2020-02-03 13:11:05 118

原创 ArrayList使用增强for循环(迭代器)方法删除元素时

参考:https://juejin.im/post/5d553d356fb9a06b317b5bee#heading-7用迭代器方式遍历集合元素时,如果需要删除或者修改集合中元素,建议使用迭代器的删除方法增强for循环本质上调用的还是集合的迭代器因为调用 list自带的remove或者添加 方法,会将modCount值++,迭代器的遍历会先调用**hasNext()方法,如果接下来程...

2019-12-15 15:09:48 545

转载 java字符串拼接

转自:https://blog.csdn.net/Zen99T/article/details/51255418StringBuilder 的append 方法效率最高

2019-08-07 20:41:13 65

原创 Java中的equals 和 ==

https://www.jianshu.com/p/08445889bbb1的一个图:一般我们在使用泛型的时候,需要用到基本的类型的包装类,即 引用数据类型二者的区别:https://www.cnblogs.com/smyhvae/p/3929585.html因此,如果一个容器的类型是泛型,而我们想比较容器中元素值是否相等,就可以用 equals 方法equals 方法在顶级父类 ...

2019-08-06 13:38:15 69

原创 n个骰子的点数

参考:https://www.jianshu.com/p/5fc41ff88c3a题目要求:把n个骰子仍在地上,所有骰子朝上一面的点数之和为s。输入n,打印出s的所有可能的值的出现概率。思路:n个骰子,所有可能出现的点数和 就是 1~6*n.题目要求的是概率,因此就要求 每种点数可能出现的次数。假设当前 有 m个骰子,那么点数 和为s 的求法就是 m-1个骰子时,s-1,s-6情况的...

2019-07-22 11:27:42 153

原创 字符串的翻转

一个是 例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。这道题的解法就是, 先翻转整个字符串,然后依次翻转每个单词注意在 依次翻转每个单词的时候,判断条件的先后顺序:(1)循环终止的条件是 a>=len(2) 先判断 a 时候为 ‘ ’,如果是,则++(3) 接着就是 翻转的...

2019-07-17 10:20:27 94

原创 只出现一次的数(其它数字出现三次)

https://www.cnblogs.com/grandyang/p/4741122.html对于数的每一位,出现三次,可以通过取余数消掉。那么最终得到的就是只出现一次数的二进制。每次讲sum置位0,并且右移当前位,和1进行与操作,就是当前位应该的取值。每次计算完当前位,要左移到它原来的位置,和结果数 或 操作,就能将当前的位的数放在 结果上。或 运算:1|0 = 01 | 1 =...

2019-07-12 19:06:18 1226

原创 判断平衡二叉树

可以一边计算树的高度,一边判断树是否为平衡二叉树。而不用分开。因为分开的话会有大量重复计算……class Solution {public: bool IsBalanced_Solution(TreeNode* pRoot) { int d = 0; return solve(pRoot,d); } bool solv...

2019-07-10 09:56:27 82

原创 最长无重复子字符串

https://leetcode.com/problems/longest-substring-without-repeating-characters/剑指offer上的解法是动态规划,即:f(i)表示当前i位置字符结尾的子字符串的最长无重复结果那么考虑两种情况:(1)当前位置的字符 距离其上一次出现的距离 d 大于当前长度,则说明该字符未出现在当前字符,直接加上当前字符;(2)若&l...

2019-07-02 10:31:31 180

空空如也

空空如也

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

TA关注的人

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