【java】 反射 学习笔记

java中万事万物皆对象,类也是对象,它是Class类的对象,这个对象叫做该类的类类型。创建该类的类类型的三种方式://Foo的实例对象Foo f1 = new Foo();//法一,任何类都有一个隐含的静态成员变量classClass c1 = Foo.class;//法二Class c2 = f1.getClass();//法三Class c3 = null; ...
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【ACM】 2019湖南省赛K(牛客国庆集训Day1 K) 双向链表练习题

放上题目链接:https://ac.nowcoder.com/acm/contest/1099/K中文题面不做过多解释。比赛刚结束的时候和队友讨论过这道题,当时说的思路是用双向链表把第一个串的尾和第二个串的头连起来,建立一个数组存状态。每次操作都反转一下第一个串的状态。这个状态数组表示的是下一次是连表头还是表尾。然而时间太久,下午模拟了一下,成功把自己绕进去。(雾...)写这篇题解...
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Java】Java基础 学习笔记(一)

Java基础 学习笔记 1单词及运算符关键字标识符合法的标识符规则Java中的名称规范Java注释常量与变量常量变量运算符算术运算符赋值运算符比较运算符逻辑运算符三元运算符语句判断语句选择语句生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流...
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

[Java]Spring框架学习笔记

Spring 框架Spring概述IOCbean属性bean的生命周期创建bean给bean注入值使用注解创建bean(官方推荐)添加注解引入context名称空间自动扫描使用@Autowired注解实现根据类型自动装配一定要导入aop包,支持加注解模式Spring的单元测试参考资料Spring概述IOC控制反转——控制并反转资源的获取方式,由程序员自己创建资源转变为由容器创建和设置资源。...
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Java】Exception in thread "main" javax.imageio.IIOException: Can't read input file!

给图片加水印时的错误处理今天在测试给图片加水印时,出现了这样一个错误:放上代码:package com.o2o.util;import net.coobird.thumbnailator.Thumbnails;import net.coobird.thumbnailator.geometry.Positions;import javax.imageio.ImageIO;impo...
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Java】多线程访问同步方法的7种情况

多线程访问同步方法的7种情况前言1.两个线程同时访问一个对象的同步方法2.两个线程访问两个对象的静态方法3.两个线程访问的是synchronized的静态方法4.同时访问同步方法与非同步方法5.访问同一个对象的不同普通同步方法6.同时访问静态synchronized和非静态synchronized方法7.方法抛异常后,会释放锁前言synchronized有两种用法:对象锁和类锁。对象锁又分为...
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【centos】将80端口的请求转发至8080端口(永久生效)

systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动yum install iptables-services #安装iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port...
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Mybatis】Mybatis使用日期类型参数作为where查询条件遇到的一点小坑

@Datapublic class Work { private Employee employee; @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date workTime; private Date startTime; private Date endTime; priva...
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】leetcode201 数字范围按位与 题解

leetcode201题解题目思路代码题目给定范围 [m, n],其中 0 <= m <= n <= 2147483647,返回此范围内所有数字的按位与(包含 m, n 两端点)。示例 1:输入: [5,7]输出: 4示例 2:输入: [0,1]输出: 0题目链接思路好久没有做题了,看到今天的每日一题是中等难度就冒个泡水一发。看到位运算先找找规律: 22&23=0\ 2^2 \& 2^3=0 22&23=0&nbsp
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】第33场双周赛T1558 得到目标数组的最少函数调用次数

题目给你一个与 nums 大小相同且初始值全为 0 的数组 arr ,请你调用以上函数得到整数数组 nums 。请你返回将 arr 变成 nums 的最少函数调用次数。答案保证在 32 位有符号整数以内。题目链接思路参考了这位巨巨的思路。zerotrac正向思考不行就反向思考,把问题转换为将nums采用单个-1或全部除以2的操作全变为0的最小步数。对偶数来说,除以2的操作优于-1。对奇数来说,先减1再除以2的操作最优。所以可以先将nums数组中的奇数先全部转换为偶数,再对整个数组除以2。重
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】647. 回文子串 题解

题目给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。题目链接思路记录一下从别处看到的做dp题的大致思路:大问题是什么?规模小一点的子问题是什么?二者之间的联系?假设dp[i][j]表示从i到j的子串为回文串,对于dp[i][j]可分为三种情况:1.子串长度为1,即i==j,此时dp[i][j]=true2.子串长度为2,即j-i==1,此时若s[j]==s[i],则dp[i][j]=true
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】17.电话号码的字母组合 题解

题目给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。思路递归。把问题的范围缩小一点,假设字符串长度为1,结果就直接枚举该字符的组合。若字符串长度为2,结果需要开二重循环,枚举每一种可能。若字符串长度为3,结果就需要开三重循环,依此类推。对原字符串中的每一个数字,操作都是枚举再添加,就可以递归的处理问题。代码class Solution { private ArrayList<String&g
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】39.组合总和 题解

题目给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的数字可以无限制重复被选取。说明:所有数字(包括 target)都是正整数。解集不能包含重复的组合。示例 1:输入:candidates = [2,3,6,7], target = 7,所求解集为:[[7],[2,2,3]]示例 2:输入:candidates = [2,3,5], target = 8,
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】31.下一个排列 题解

题目实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,1题目链接思路从后向前找到第一个a[i] < a[i + 1]的位置,此时[i + 1, nums.length - 1]为降序排列。再次从后向前查找第一个大
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】第204场周赛1 2 3题题解

重复至少 K 次且长度为 M 的模式题目给你一个正整数数组 arr,请你找出一个长度为 m 且在数组中至少重复 k 次的模式。模式 是由一个或多个值组成的子数组(连续的子序列),连续 重复多次但 不重叠 。 模式由其长度和重复次数定义。如果数组中存在至少重复 k 次且长度为 m 的模式,则返回 true ,否则返回 false 。示例 1:输入:arr = [1,2,4,4,4,4], m = 1, k = 3输出:true解释:模式 (4) 的长度为 1 ,且连续重复 4 次。注意,模式
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】剑指offer33.二叉搜索树的后序遍历序列 题解

题目输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回 true,否则返回 false。假设输入的数组的任意两个数字都互不相同。参考以下这颗二叉搜索树:5/ \2 6/ \1 3示例 1:输入: [1,6,3,2,5]输出: false示例 2:输入: [1,3,2,6,5]输出: true提示:数组长度 <= 1000题目链接思路记录一下二叉搜索树的性质:左子树节点值小于根节点,右子树节点值大于根节点。每次递归找到第一个大于根节
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】二叉树的四种遍历方式

二叉树的四种遍历方式前序遍历题目思路迭代代码中序遍历思路迭代代码后序遍历代码层序遍历题目思路代码前序遍历题目给定一个二叉树,返回它的 前序 遍历。示例:输入: [1,null,2,3]12/3输出: [1,2,3]题目链接思路迭代从根节点开始,每次迭代弹出当前栈顶元素,并将其孩子节点压入栈中,先压右孩子再压左孩子。代码package com.alone.test.leetcode;import javax.naming.LinkLoopException;import
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】由二叉树遍历序列构造二叉树

前序+中序题目根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树:3/ 9 20/ 15 7题目链接思路前序遍历是先根节点再左子树再右子树。前序遍历的第一个节点就一定是根节点。中序遍历是先左子树再根节点再右子树。所以可以在中序遍历序列中查找前序遍历的第一个节点,再递归下去。代码class Sol
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】53.最大子序和&&152.乘积最大子数组 题解

这两道题有些相似,放在一起更方便以后查阅。53.最大子序和题目给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。题目链接思路这题可以采用动态规划解决。设dp[i]为[0,i]内连续子数组最大和。对于nums[i]只有两种方式,取或者不取,若取nums[i]放入连续子数组,此时最大和为nums[i]+dp[i
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0

【Leetcode】98.验证二叉搜索树 题解

题目给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例 1:输入:2/ 1 3输出: true示例 2:输入:5/ 1 4/ 3 6输出: false解释: 输入为: [5,1,4,null,null,3,6]。根节点的值为 5 ,但是其右子节点值为 4 。题目链接思路记录一下二叉搜索树的性质。节
分类: 其他 发布时间: 09-26 11:45 阅读次数: 0