![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 66
phial03
love coding!!! Go、Rust、Java,一名喜欢技术,热爱技术的程序猿!
展开
-
动态规划-矩阵中的最短路径
一、牛客 NC59 矩阵的最小路径和给定一个 n * m 的矩阵 a,从左上角开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的数字累加起来就是路径和,输出所有的路径中最小的路径和。数据范围: 1≤n,m≤500,矩阵中任意值都满足 0 ≤ a(i,j) ≤100要求:时间复杂度 O(nm)O(nm)例如:当输入[[1,3,5,9],[8,1,3,4],[5,0,6,1],[8,8,4,0]]时,对应的返回值为12,所选择的最小累加和路径如下图所示:public int min原创 2022-05-05 23:03:40 · 3529 阅读 · 0 评论 -
牛客剑指offer题目汇总
剑指offer总共66道题目汇总一.数组(共12道题目):1.二维数组中的查找6.旋转数组的最小数字13.调整数组顺序使奇数位于偶数前面19.顺时针打印矩阵28.数组中出现次数超过一半的数字30.连续子数组的最大和32.把数组排成最小的数35.数组中的逆序对37.数字在排序数组中出现的次数40.数组中只出现过一次的数字50.数组中的重复数字51.构建乘积数组二.字符串(共9道题目):2.替换空格27.字符串的排列34.第一个只出现一次的字符43.左旋转字符串44.反转原创 2022-05-04 19:07:23 · 1208 阅读 · 0 评论 -
Oracle JDK和 OpenJDK 之间的区别
1. 简介在本文中,我们将探讨Oracle Java Development Kit和OpenJDK之间的差异。我们先快速浏览一下,然后进行比较。之后,我们将看到其他JDK实现的列表。2. Oracle JDK和Java SE历史JDK(Java Development Kit)是Java平台编程中使用的软件开发环境。它包含一个完整的Java运行时环境,即所谓的私有运行时。该名称来自于它包含的工具多于独立的JRE以及开发Java应用程序所需的其他组件。Oracle强烈建议使用术语JDK来引用Java原创 2022-04-30 23:47:57 · 14475 阅读 · 0 评论 -
后端必备知识
1.线程模型参考阅读:线程的实现线程是CPU调度执行的基本单位,多个线程共享系统为进程分配的资源,又可以被系统独立调度执行。(1)内核线程模型(Kernel-Level Thread ,KLT),即一对一线程模型(2)用户线程模型(User Thread),即1:N 模型(3)混合线程模型- 用户线程 + 轻量级进程混合实现, 即N:M 模型(1)内核线程模型即完全依赖操作系统内核提供的内核线程(Kernel-Level Thread ,KLT)来实现多线程。在此模型下,线程的切换调度由原创 2022-04-15 17:30:54 · 1425 阅读 · 1 评论 -
kafka命令行操作大全
最近利用flink使用一个流式SQL处理平台,利用kafka, mysql, hive等组件比较多,命令行突然间需要操作一次记不住命令很麻烦,索性直接整理成笔记。在 0.9.0.0 之后的 Kafka,出现了几个新变动,一个是在 Server 端增加了 GroupCoordinator 这个角色,另一个较大的变动是将 topic 的 offset 信息由之前存储在 zookeeper 上改为存储到一个特殊的 topic(__consumer_offsets)中。启动 Kafka后台常驻方式,带上参数原创 2022-04-13 00:19:37 · 5582 阅读 · 0 评论 -
maven的settings文件配置
flink源码编译出现maven以来找不到的情况,需要配置仓库镜像,收藏于下:<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTINGS/1.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apa原创 2022-04-09 20:37:41 · 2800 阅读 · 0 评论 -
生产环境JVM参数配置
参考地址:汀雨博文各种垃圾回收器详解新生代回收器:Serial、ParNew、parallel老年代回收器:Serial Old、CMS、Parallel Old新生代和老年代回收器:G11. GC垃圾回收器我们生产环境使用CMSCMS全称 Concurrent Mark Sweep标记-清除算法的垃圾回收器使用场景:GC 过程短暂停,适合对时延要求较高的服务,用户线程不允许长时间的停顿。缺点:服务长时间运行,造成严重的内存碎片化。另外,算法实现比较复杂(如果也算缺点的话)实现机制:原创 2022-04-07 17:44:37 · 2331 阅读 · 0 评论 -
JVM常用垃圾回收器的特点、优劣势、使用场景和参数设置
垃圾回收器详解参考地址新生代回收器:Serial、ParNew、parallel老年代回收器:Serial Old、CMS、Parallel Old新生代和老年代回收器:G1JVM GC垃圾回收器参数设置JVM给出了3种选择:串行收集器、并行收集器、并发收集器。串行收集器只适用于小数据量的情况,所以生产环境的选择主要是并行收集器和并发收集器。默认情况下JDK5.0以前都是使用串行收集器,如果想使用其他收集器需要在启动时加入相应参数。JDK5.0以后,JVM会根据当前系统配置进行智能判断。串原创 2022-04-07 17:35:52 · 1152 阅读 · 0 评论 -
JVM调优思路和分析办法
dump 文件里,值得关注的线程状态有:死锁,Deadlock(重点关注)执行中,Runnable等待资源,Waiting on condition(重点关注)等待获取监视器,Waiting on monitor entry(重点关注)暂停,Suspended对象等待中,Object.wait() 或 TIMED_WAITING阻塞,Blocked(重点关注)停止,Parked综合示范一:Waiting to lock 和 Blocked实例如下:"RMI TCP Connecti原创 2022-04-07 15:50:39 · 617 阅读 · 0 评论 -
牛客在线编程-华为机试-中等
题号题目知识点难度通过率HJ16购物单动态规划中等21.21%HJ17坐标移动字符串中等24.79%HJ20密码验证合格程序数组 字符串 模拟中等28.91%HJ24合唱队队列 动态规划中等26.04%HJ26字符串排序字符串 排序中等36.80%HJ27查找兄弟单词中等21.10%HJ29字符串加解密字符串 模拟中等27.18%HJ32...原创 2022-04-04 00:34:41 · 1321 阅读 · 0 评论 -
牛客在线编程-华为机试-简单
题号题目知识点难度通过率HJ1字符串最后一个单词的长度字符串简单32.49%HJ2计算某字符出现次数字符串 哈希简单30.43%HJ4字符串分隔字符串简单28.60%HJ5进制转换字符串简单33.28%HJ6质数因子排序简单27.01%HJ8合并表记录简单35.02%HJ10字符个数统计字符串 哈希简单47.31%HJ11数字颠倒字符串简单58.5...原创 2022-04-01 00:56:14 · 385 阅读 · 0 评论 -
牛客Leetcode高频题解(上)
Leetcode 题解:1、NC78 反转链表(1)使用栈解法:import java.util.Stack;public class Solution { public ListNode ReverseList(ListNode head) { Stack<ListNode> stack= new Stack<>(); //把链表节点全部摘掉放到栈中 while (head != null) { stack.pu原创 2021-08-19 14:55:07 · 571 阅读 · 2 评论 -
SpringAOP,IOC, DI
和mybatis整合XML 管理sql --> xml 映射用接口配合注解 管理SQL --> 接口映射@Insert(“sql”)@Update(“sql”)@Delete(“sql”)@Select(“sql”)@Insert(“insert into user(username,password) values(#{属性名}, #{属性名})”)public...原创 2018-11-09 20:50:49 · 421 阅读 · 0 评论 -
SSM框架整合
搭建环境pom.xml加入spring-webmvccommons-fileupload (文件上传)jackson (转换json的)servlet-apijsp-apijstlweb.xml 配置统一入口控制器DispatcherServelt统一入口 url-pattern --> /在tomcat启动时创建spring容器<init-param...原创 2018-11-15 17:41:54 · 199 阅读 · 0 评论 -
框架framework开篇
framework 提高开发效率的工具对jdbc封装,对数据库的增删改查变得简单:mybatis, hibernate对web开发封装,spring-mvc, struts2处理请求参数 string把这些框架整合在一起:spring(软件的黏合剂)SSM -&gt; spring-mvc, spring, mybatisSSH -&gt; strtus2, spring, hiber...原创 2018-10-26 12:27:32 · 233 阅读 · 0 评论 -
Spring整合MyBatis框架
mybatis动态sql<foreach collection="要遍历的集合" open="起始符号" close="结束符号" separator="分隔符" item="临时变量名"><if test="条件">sql片段</if><where> 去掉多余and原创 2018-10-28 19:00:19 · 198 阅读 · 0 评论 -
使用过滤器将页面展示分页实现,自动登录
1. 过滤器问题:设置解码字符集时,以下的代码出现在了多处servlet中,要求:希望避免出现重复代码request.setCharacterEncoding("utf-8");2. 概念Filter 过滤器可以对请求(响应)进行过滤请求 --> 过滤器1 --> 过滤器2 --> … --> 过滤器n --> 目的地(Servlet, jsp)3....原创 2018-09-23 09:21:07 · 413 阅读 · 0 评论 -
springboot注解详解
SpringBoot注解:注解说明@Service注解在serviceImpl类上,表示这是一个业务层bean@Controller注解在controller类上,表示这是一个控制层bean@Repository注解在dao类上,表示这是一个数据访问层bean@Component注解在类上,表示通用bean对象 ,value不写默认就是类名首字母...转载 2019-03-27 22:09:34 · 3284 阅读 · 0 评论 -
web.xml文件的配置和git的使用
1. web.xml 配置文件WEB-INF|- lib 放第三方jar包|- classes 自己写的servlet等java类|- web.xml web应用程序的配置文件写一个servlet 要在类上加一个 @WebServlet(urlPatterns="")写一个filter 要在类上加一个 @WebFilter(urlPatterns="")这种基于注解的写法在servl...原创 2018-09-23 21:09:42 · 388 阅读 · 0 评论 -
springboot开始
springmvc @Cacheable(cacheNames="缓存名") 缓存方法的返回结果,如果缓存中有,不执行方法 public 返回值 控制器方法(int id){ } @CacheEvict(cacheNames="缓存名", allEntries=true) 让某个缓存的内容失效 public 返回值 增删改(){ } @CachePut(cacheN...原创 2018-11-23 21:01:08 · 66 阅读 · 0 评论 -
SpringBoot和SSM常用配置
1.maven设置仓库地址:~/.m2/setting.xml文件设置&amp;lt;?xml version=&quot;1.0&quot; ?&amp;gt;&amp;lt;settings&amp;gt; &amp;lt;profiles&amp;gt; &amp;lt;profile&amp;gt; &amp原创 2018-11-24 21:29:18 · 295 阅读 · 0 评论 -
springboot中常用注解大全:
https://blog.csdn.net/weixin_40753536/article/details/81285046一、注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Con...原创 2018-11-23 22:27:26 · 220 阅读 · 0 评论 -
集合List, Set, Map面试题总结
1、List(有序、可重复)|----Vector└----Stack|----ArrayList|----LinkedListList里存放的对象是有序的,同时也是可以重复的,List关注的是索引,拥有一系列和索引相关的方法,查询速度快。因为往list集合里插入或删除数据时,会伴随着后面数据的移动,所有插入删除数据速度慢。(1) Vector和ArrayList:vector是线...原创 2018-11-27 16:17:56 · 810 阅读 · 0 评论 -
JVM内存管理,类加载机制
https://blog.csdn.net/gongxiaoou/article/details/80804176https://www.cnblogs.com/DreamRecorder/p/9238202.htmlhttps://blog.csdn.net/qq_16216221/article/details/71600535https://www.cnblogs.com/paddix...原创 2018-11-27 16:44:16 · 65 阅读 · 0 评论 -
BST树,AVL树, B树, B-树, B+树, B*树,红黑树RBT, 堆积树(堆), 字典树Trie,跳表
https://blog.csdn.net/Beyond_2016/article/details/81202511https://www.cnblogs.com/leng2052/p/5323954.htmlhttps://www.cnblogs.com/lca1826/p/6484469.html1. 二叉查找树 (Binary Search Tree)很显然,二叉查找树的发现完全是...原创 2018-11-27 17:57:27 · 167 阅读 · 0 评论 -
java网络面试题总结
https://blog.csdn.net/zjkC050818/article/details/78345819?locationNum=9&fps=1https://blog.csdn.net/dang321580/article/details/79195558https://www.cnblogs.com/lca1826/p/6601327.html1. 简述一次完整的htt...原创 2018-11-27 18:29:01 · 245 阅读 · 0 评论 -
集合的遍历
1. list的遍历1.普通for循环for(int i = 0 ;i<list.size();i++) { int j= (Integer) list.get(i); System.out.println(j); }2.增强for循环for (Object object : list) { System.out.println(object...原创 2018-08-10 21:02:52 · 263 阅读 · 0 评论 -
外貌相似工具用法的坑
最近时间学vue的for循环用法,与前一段时间学过的JSTL中的foreach循环 混淆的很厉害,搞不清楚了,所以专门把学过的几种工具再分开详细比较一下一.EL表达式、JSTL标签库 和 vue的关系1.EL表达式:(1). EL表达式是在jsp中显示结果的语言, (2). 设置属性:pageContext.setAttribute(“名称”, Object); // 把内容起一个名...原创 2018-09-16 22:41:43 · 281 阅读 · 0 评论 -
学习cookie和session
http协议的特点:称之为无状态, 请求与请求之间不会记录状态(状态就包括请求参数等信息)1. Cookie本意是小甜点, 可以用来记录多个请求之间的联系,保存服务器的状态实现一个记住用户名的功能1.1 创建CookieCookie c = new Cookie("名字", "值"); // 创建cookiec.setMaxAge(整数); // 设置coo...原创 2018-09-16 21:04:36 · 203 阅读 · 0 评论 -
day18--线程
线程 Thread应用程序以进程为单位运行,一个进程之内可以分为一到多个线程window下可以通过任务管理器查看进程linux 下可以通过ps -fe进程、线程都可以并行执行, cpu---程序1 ---程序2 ---程序1操作系统中有一个组件叫做任务调度器,将cpu的时间片分给不同的...原创 2018-08-11 20:57:07 · 190 阅读 · 0 评论 -
day17-IO
IOInput 输入 Output 输出文件java.io.File 它是对应者实际的文件或是文件夹(目录)new File(String 文件路径)new File("d:/1.txt"); // 可以使用 / 作为分隔符new File("D:\\MySQL"); // 可以使用 \ 作为分隔符或者可以使用 File.separator 获取不...原创 2018-08-14 20:26:03 · 133 阅读 · 0 评论 -
线程安全与并发经典问题
生产者与消费者线程并发经典问题方式一: private static List<Productss> productsses = new ArrayList<>(); private static Random random = new Random(); public static void main(String[] args) {...原创 2018-08-14 20:21:34 · 247 阅读 · 0 评论 -
day19-线程
线程t1 输出 ++++++++++++++ t2 输出 ———————– t3 输出 ******t1 obj.wait() flag==1 t2 obj.wait() flag ==2 t3 obj.wait() flag ==3 jdk 1.5 5.0java.util.concurrent.* java并发工具包1. 创建线程的第三种方式...原创 2018-08-14 20:12:07 · 165 阅读 · 0 评论 -
day16--java作业
1.泛型详解可以看看大牛博客:https://blog.csdn.net/s10461/article/details/53941091 https://www.cnblogs.com/huajiezh/p/5827826.html (1)什么是泛型?java中的泛型和C++中的模板如出一辙,为什么会出现泛型呢? 促成泛型出现最引人注目的一个原因就是为了创造容器类,应用泛型来解决大量的代...原创 2018-08-01 23:39:58 · 268 阅读 · 0 评论 -
IO与集合习题综合练习
编程题1. 文件IO练习事先在当前目录下准备好一个 test.txt 的文本文件,要求该文本文件是使用 GBK 编码的多行文本文件。如:窗前明月光疑是地上霜举头望明月低头思故乡利用字节流+桥转换+缓冲流读入这个文本文件,然后按照行的顺序,以 UTF-8 的编码方 式,写到 test2.txt 文件中,例:低头思故乡举头望明月疑是地上霜窗前明月光n...原创 2018-08-10 22:04:16 · 1297 阅读 · 0 评论 -
day15--java作业
1. ArrayList、Vector、LinkedList三者的特点?ArrayList、Vector、LinkedList,分别在什么时候使用?(1)看图: 从图中可以看出,LinkedList与ArrayList、ArrayDeque这三者都实现了List接口.所有使用方式也很相似,主要区别在于因为实现方式的不同,所以对不同的操作具有不同的效率。(1)Arr...原创 2018-08-01 22:44:17 · 211 阅读 · 0 评论 -
day14--java作业
A:简答题 1、所有类中的方法在API中找到,并自己加上描述: String: public boolean matches(String regex) public String[] split(String regex) public String replaceAll(String regex...原创 2018-07-31 20:46:03 · 389 阅读 · 0 评论 -
day12-java作业
Scanner(用于接收键盘录入数据)String(字符串)12.01_常见对象(Scanner的概述和构造方法原理)A:Scanner的概述: JDK5以后用于获取用户的键盘输入B:Scanner的构造方法原理 Scanner(InputStream source) System类下有一个静态的字段: public static final In...原创 2018-07-31 18:54:40 · 216 阅读 · 0 评论 -
day13--java作业
A:简答题 1、把StringBuffer类中上课讲解的方法在API中进行查询,并用自己的话进行描述 答案: public int capacity() public int length() public StringBuffer append(String str) public StringBuffer insert(int offset,String str) publ...原创 2018-07-31 17:42:53 · 368 阅读 · 0 评论 -
java集合超详解
一、集合大纲 1.集合和数组的区别:2.Collection集合的方法:3.常用集合的分类:Collection 接口的接口 对象的集合(单列集合) ├——-List 接口:元素按进入先后有序保存,可重复 │—————-├ LinkedList 接口实现类, 链表, 插入删除, 没有同步, 线程不安全 │—————-├ ArrayList 接口...原创 2018-08-03 21:28:15 · 453266 阅读 · 125 评论