java
liuYinXinAll
爱coding,我的网站 www.liuyinxin.com
展开
-
Mybatis列表批量插入并返回插入主键
Mybatis列表批量插入关于mybatis 批量插入。 因为我用的MySql,支持数据库批量insert 所以只要配置useGeneratedKeys和keyProperty就好,简单配置如果<insert id="insertTermList" useGeneratedKeys="true" keyProperty="id"> INSERT INTO t...原创 2017-06-16 22:50:55 · 3811 阅读 · 4 评论 -
帮小学生排队
题目哈哈哈笑死我了这个题目描述用一个数组表示一群正在排队的小学生,每个小学生用一对整数 H, K 来表示:H 表示这个小学生的身高,K 表示这个小学生前面应该有 K 个人的身高 >= 他。写一个算法,对给出的一组小学生计算出符合描述的正确排序。我的思路首先,将小朋友拍一个顺序,排序按照小朋友的身高降序,同时按照前面人的个数升序然后链表中前面人的个数插入就好了。因为排序后链表...原创 2019-08-02 00:10:12 · 361 阅读 · 0 评论 -
和为零的三元组
和为零的三元组题目链接:https://code.mi.com/problem/list/view?id=15描述给出一个整数数组, 数组中是否存在任意 3 个数 a, b, c 满足 a + b + c = 0? 找出数组中所有满足以上条件的三元组,最后输出这些三元组的个数(包含相同元素的三元组只计算一次)。输入一个包含多个整数(正或负)的字符串,每个整数之间用逗号(,)分隔,如:-...原创 2019-08-01 23:19:32 · 722 阅读 · 0 评论 -
移除 K 位得到最小值
有一行由 N 个数字组成的数字字符串,字符串所表示的数是一正整数。移除字符串中的 K 个数字,使剩下的数字是所有可能中最小的。假设:字符串的长度一定大于等于 K字符串不会以 0 开头思路首先,可以用贪心的思想,如果后一个数大于前一个数,则把前一个数字抛弃。对此可以用贪心的思想。用一个栈去存储数据。其次,如果是有序数组,则把后k位直切抛弃掉。代码如下:import java.util...原创 2019-07-16 22:57:25 · 443 阅读 · 0 评论 -
约瑟夫问题
DescriptionN个人围坐一圈,从1号开始连续报数,报到3的人退出圈,依此类推。直到最后圈里剩下两个人停止。问最后剩下的两个人的序号是多少。(报数按顺时针方向)Input圈中人数NOutput剩下的两个人的序号Sample Input10Sample Output4 10import java.util.LinkedList;import java.util.Scann...原创 2019-06-27 15:30:06 · 477 阅读 · 0 评论 -
ubuntu下载openjdk源码记录
方法一通过mercurial安装,类似于git安装缺点就是太慢了,推荐通过方法二安装安装 mercurialopenjdk是用mercurial管理的,所以我们先下载 mercurialsudo apt-get install mercurial其他系统的安装方法# Fedora$ dnf install mercurial# Gentoo$ emerge mercuri...原创 2019-05-17 15:48:24 · 1032 阅读 · 0 评论 -
Java字符串split函数的源码笔记
Java对于字符串split函数的源码笔记之前对字符串的split函数都是一知半解,今天好好看了看源代码,对之前理解不到位的地方做一些笔记,加深下对split函数的理解函数的定义一般调用的是只有一个参数的第一个参数为正则表达式,要分割的第二个参数为限制的最大个数,limit小于等于0的话就是不限制有一个实参的函数内部会调用有2个实参的split方法public String[] sp...原创 2019-04-15 17:55:19 · 629 阅读 · 0 评论 -
ConcurrentHashMap源码笔记之PUT与GET操作
写在前面之间一直对ConcurrentHashMap理解不深,感觉就是HashMap+Segment一个锁就好了经过一些事情后感觉自己还是缺钱的很多.故开始慢慢学习源码.ConcurrentHashMap源码很长,我自己总结的之前看的都是jdk1.7的.现在看jdk1.8中的源码.jdk1.8中,在ConcurrentHashMap是由 哈希表 + 链表 + 红黑树 组成的.Concu...原创 2019-04-03 01:08:07 · 739 阅读 · 0 评论 -
Java中 clinit 和 init 区别
在调试的过程中,经常可以看到 <init> 一个初始化函数它是这个样子的刚开始没有注意,后来发现其实 其实就是这个类的构造函数那么又是什么呢? 其实就这这个类的静态代码块的集合举个例子吧,下面是一个Demo类。如果里面没有静态代码块,就和下面一样,只有简单的静态函数,那么我们可以看一下public class Demo { public Demo () { ...原创 2019-04-02 18:20:08 · 413 阅读 · 0 评论 -
Spring源码自学笔记
文章目录Spring源码自学笔记从ClassPathXmlApplicationContext开始环境属性配置AbstractEnvironmentAbstractPropertyResolverStandardEnvironmentAssert用法总结未完待续,如有错误,欢迎斧正,谢谢!Spring源码自学笔记从ClassPathXmlApplicationContext开始ClassPa...原创 2019-04-07 10:28:21 · 230 阅读 · 0 评论 -
数据中心 100分 CCF 201812-4 [最小生成树 + 优先队列] Java版本
样例输入4511 2 31 3 41 4 52 3 83 4 2样例输出4样例说明思路:这个题我是用Java解决的主要是求最小生成树上权值最小的那个边,最终用了克鲁思卡尔(Kraskra) + 优先队列终于在不超时的情况下满分了说下要注意的地方感觉CCF中,Java很容易超时。首先观察给出的数据量大小,发现是一个比较稀疏的图,所以用 Kraskra求最小...原创 2019-03-11 20:18:50 · 252 阅读 · 0 评论 -
springboot使用Freemarker继承
springboot 使用Freemarker继承 最近需要用到Freemarker的继承。但是发现没有关于springboot配置Freemarker的继承的。所以趁现在有时间写个博客。1. Freemarker继承介绍Freemarker 通过 rapid java实现继承。实际是rapid的jar包提供的三个自定义标签。实现继承用到的有三个标签:@extends,@block ,@ove原创 2017-05-04 12:03:38 · 2802 阅读 · 0 评论 -
什么是线程安全
虽然常常念叨的线程安全,但是却对线程安全没有一个明确的定义,今天看深入理解JAVA虚拟机,里面有讲到,记录一下Brian Goetz 对线程安全比较恰当的定义: 当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方法进行其他的协调操作,调用这个对象的行为都可以获得正确的结果,那么这个对象就是线程安全的....原创 2019-08-13 13:48:17 · 188 阅读 · 0 评论