java编程
ceoicac
这个作者很懒,什么都没留下…
展开
-
异常java.lang.IllegalMonitorStateException
今天写代码遇到一个异常java.lang.IllegalMonitorStateException,百度问题,搜索blog得知JavaDoc上关于IllegalMonitorStateException的解释是:Thrown to indicate that a thread has attempted to wait on an object’s monitor or to notify ...转载 2019-06-17 14:49:53 · 557 阅读 · 0 评论 -
leetcode-question836
题目描述矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标。 如果相交的面积为正,则称两矩形重叠。需要明确的是,只在角或边接触的两个矩形不构成重叠。 给出两个矩形,判断它们是否重叠并返回结果。思路只要两个矩形的左上角横坐标的最大值都小于矩形右下角的横坐标的最小值并且两个矩形的左上角的纵坐标的最大值都小于...原创 2018-05-21 23:22:08 · 185 阅读 · 0 评论 -
java 编程学习之管道
管道定义的理解待补充例子import java.io.IOException;import java.io.PipedInputStream;import java.io.PipedOutputStream;public class PipeExample { private static PipeExample ourInstance = new PipeE...原创 2018-05-21 23:14:48 · 483 阅读 · 0 评论 -
leetcode-question2
题目描述给定两个非空链表来表示两个非负整数。位数按照逆序方式存储,它们的每个节点只存储单个数字。将两数相加返回一个新的链表。 你可以假设除了数字 0 之外,这两个数字都不会以零开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4) 输出:7 -> 0 -> 8 原因:342 + 465 = 807思路两个链表同...原创 2018-05-11 15:49:34 · 158 阅读 · 0 评论 -
leetcode-question1
题目描述给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1]思路运用HashMap来存储数组中元素的位置,用target减去元素中的某一个值,...原创 2018-05-16 23:16:50 · 158 阅读 · 0 评论 -
leetcode-question8
题目描述实现 atoi,将字符串转为整数。在找到第一个非空字符之前,需要移除掉字符串中的空格字符。如果第一个非空字符是正号或负号,选取该符号,并将其与后面尽可能多的连续的数字组合起来,这部分字符即为整数的值。如果第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。字符串可以在形成整数的字符后面包括多余的字符,这些字符可以被忽略,它们对于函数没有影响。当字符串中的...原创 2018-05-17 11:15:22 · 179 阅读 · 0 评论 -
如何理解Java中的Class
待完成。。。。。。原创 2018-04-13 16:02:08 · 284 阅读 · 0 评论 -
异常BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the Appl
异常:BeanFactory not initialized or already closed - call ‘refresh’ before accessing beans via the ApplicationContext网上查了很多解决的方法,这里我说我的失误导致的这个异常. 我是刚从SVN获取的项目,获取下来后配好数据,然后启动项目,然后就是出现了这个异常,以前也遇到一次,但是忘...原创 2018-04-17 10:07:10 · 3140 阅读 · 0 评论 -
leetcode-question125
题目描述:Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases. For example, “A man, a plan, a canal: Panama” is a palindrome. “race a car” is not原创 2017-11-01 12:29:37 · 616 阅读 · 0 评论 -
leetcode-question189
题目描述:Rotate an array of n elements to the right by k steps. For example, with n = 7 and k = 3, the array [1,2,3,4,5,6,7] is rotated to [5,6,7,1,2,3,4].思路:先将前n-k个数字旋转,然后旋转第n-k个到第n个的数字,最后整体旋转即可/** *原创 2017-10-31 22:28:16 · 308 阅读 · 0 评论 -
leetcode-question7
题目描述Reverse digits of an integer.Example1: x = 123, return 321 Example2: x = -123, return -321Note:The input is assumed to be a 32-bit signed integer. Your function should return 0 when the reversed i原创 2017-10-27 13:48:49 · 233 阅读 · 0 评论 -
矩阵中的路径
题目:请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。 例如 a b c e s f c s a d e e 矩阵中包含一条字符串”bcced”的路径,但是矩阵中不包含”abcb”路径,因为字符串的第一个字符b占据了矩阵原创 2017-08-15 22:18:16 · 156 阅读 · 0 评论 -
滑动窗口的最大值
题目:给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3,[4,2,6],2,5,1}原创 2017-08-13 10:01:25 · 177 阅读 · 0 评论 -
顺时针打印矩阵
题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.思路:待补充代码:import java.util.ArrayList;import java.util.ArrayList;pub原创 2017-08-18 17:06:33 · 188 阅读 · 0 评论 -
leetcode-question9
题目描述判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。 示例 3: 输入: 10 输出: false 解释: 从右向左读, 为 0...原创 2018-05-22 20:37:46 · 160 阅读 · 0 评论 -
@RequestParam 注解 attribute value must be a constants
如下代码所示:我在利用@RequestParam 为max参数设置默认值MAX_LONG_AS_STRING 得实惠,产生了一个错误attribute value must be a constantsprivate static final String MAX_LONG_AS_STRING = Long.toString(Long.MAX_VALUE);@RequestMapping...原创 2019-06-03 21:58:06 · 9868 阅读 · 0 评论 -
leetcode-question69 x的平方根
题目描述实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例 1:输入: 4输出: 2示例 2:输入: 8输出: 2说明: 8 的平方根是 2.82842…,由于返回类型是整数,小数部分将被舍去。思路解法1遍历1到x/2的数,注意判断是不要用 “i*i == ...原创 2018-11-22 19:10:08 · 116 阅读 · 0 评论 -
leetcode-question67 二进制求和
题目描述给定两个二进制字符串,返回他们的和(用二进制表示)输入为非空字符串且只包含数字 1 和 0。示例 1:输入: a = “11”, b = “1”输出: “100”示例 2:输入: a = “1010”, b = “1011”输出: “10101”思路将字符串转化为int数组,数组的长度为两个字符串最长长度+1(长度+1的原因是考虑到最高位进位的情况),然后将a,...原创 2018-11-22 15:38:16 · 128 阅读 · 0 评论 -
leetcode-question709
题目实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。示例 1:输入: “Hello”输出: “hello”示例 2:输入: “here”输出: “here”示例 3:输入: “LOVELY”输出: “lovely”思路这个题目很简单,将字符串转换为字符数组,然后在65到90之间的大写字母...原创 2018-11-21 18:23:08 · 104 阅读 · 0 评论 -
leetcode-question929
题目每封电子邮件都由一个本地名称和一个域名组成,以 @ 符号分隔。例如,在 alice@leetcode.com中, alice 是本地名称,而 leetcode.com 是域名。除了小写字母,这些电子邮件还可能包含 ‘,’ 或 ‘+’。如果在电子邮件地址的本地名称部分中的某些字符之间添加句点(’.’),则发往那里的邮件将会转发到本地名称中没有点的同一地址。例如,"alice.z@leet...原创 2018-11-21 18:20:15 · 334 阅读 · 0 评论 -
leetcode-question43
题目描述给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 示例 1: 输入: num1 = “2”, num2 = “3” 输出: “6”示例 2: 输入: num1 = “123”, num2 = “456” 输出: “56088”说明:num1 和 num2 的长度小于110...原创 2018-09-13 18:06:42 · 190 阅读 · 0 评论 -
leetcode-question50
题目描述实现 pow(x, n) ,即计算 x 的 n 次幂函数。 示例 1: 输入: 2.00000, 10 输出: 1024.00000 示例 2: 输入: 2.10000, 3 输出: 9.26100 示例 3:输入: 2.00000, -2 输出: 0.25000解释: 2-2 = 1/22 = 1/4 = 0.25 说明:...原创 2018-09-17 12:14:40 · 122 阅读 · 0 评论 -
leetcode-question66
加一题目描述给定一个非负整数组成的非空数组,在该数的基础上加一,返回一个新的数组。 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。思路首先判断加一以后数字的位数会变得情况,也就是9,99,999,…等情况的时候,这种情况好处理,直接将数组的长度加一,第一个元素为1,其他为0即可。第二种情况是需要进位的,首先将数...原创 2018-07-26 10:40:03 · 247 阅读 · 0 评论 -
smb读取共享文件夹
SMB协议 SMB(Server Message Block)通信协议是微软(Microsoft)和英特尔(Intel)在1987年制定的协议,主要是作为Microsoft网络的通讯协议。SMB 是在会话层(session layer)和表示层(presentation layer)以及小部分应用层(application layer)的协议。 SMB使用了NetBIOS的应用程序接...原创 2018-07-10 19:40:52 · 10063 阅读 · 0 评论 -
leetcode-question65
题目描述验证给定的字符串是否为数字。 例如: “0” => true ” 0.1 ” => true “abc” => false “1 a” => false “2e10” => true 说明: 我们有意将问题陈述地比较模糊。在实现代码之前,你应当事先思考所有可能的情况。思路:主要是考虑各种可能的情况,如”+.” ” 123” 等等...原创 2018-05-30 10:16:41 · 167 阅读 · 0 评论 -
leetcode-question29
题目描述给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。示例 1: 输入: dividend = 10, divisor = 3 输出: 3示例 2: 输入: dividend = 7, divisor = -3 输出:...原创 2018-06-04 19:50:28 · 218 阅读 · 2 评论 -
leetcode-question13
题目描述罗马数字包含以下七种字符:I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M ...原创 2018-06-04 18:37:57 · 143 阅读 · 0 评论 -
leetcode-question12
题目描述罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500...原创 2018-06-04 17:30:57 · 160 阅读 · 0 评论 -
表示数值的字符串
题目:请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串”+100”,”5e2”,”-123”,”3.1416”和”-1E-16”都表示数值。 但是”12e”,”1a3.14”,”1.2.3”,”+-5”和”12e+4.3”都不是。思路:待补充代码:dd原创 2017-08-17 14:08:55 · 176 阅读 · 0 评论 -
孩子们的游戏(圆圈中最后剩下的数字)
题目:每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0…m-1报数….这样下去….直到剩下最后一个原创 2017-08-18 11:34:01 · 301 阅读 · 0 评论 -
和为S的连续正数序列
小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? Good Luck! 输出描述:输出所有和为S的连续正数序列。序原创 2017-06-11 17:23:54 · 190 阅读 · 0 评论 -
和为S的两个数
输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 import java.util.ArrayList;public class Solution { public ArrayList FindNumbersWithSum(int [] array,int sum) { ArrayList原创 2017-06-11 16:17:06 · 282 阅读 · 0 评论 -
把二叉树打印成多行
题目:从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。思路:二叉树的层次遍历,然后将每一层的结点单独打印到一行。代码:import java.util.ArrayList;import java.util.Queue;import java.util.LinkedList;/*public class TreeNode { int val = 0; TreeN原创 2017-07-10 20:22:28 · 384 阅读 · 0 评论 -
按之字形顺序打印二叉树
题目:请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。思路:按之字形顺序打印二叉树需要两个栈,在打印某一个行结点时,把下一层的子结点,保存到相应的栈里。如果打印的是奇数层时(如第一层,第三层等),则先保存左子结点,再保存右子结点到第一个栈里。如果当前打印的是偶数层(第二层,第四层等),则先保存右子结点,再原创 2017-07-10 19:33:44 · 170 阅读 · 0 评论 -
链表中环的入口结点
题目:一个链表中包含环,如何找出环的入口节点。思路:首先一个假设,环里面n个节点,设置两个指针,第一个指针指向链表头结点,第二个指针指向链表第n个结点,两个结点同时向前移动,然后两个结点相遇的结点就是入口结点。至于怎么获取环里面有几个结点,用判断一个链表有没有环的思想,设置一快一慢指针,当两个指针指向同一个结点时,说明有环,而且正在环中,然后从这个结点开始,一遍移动指针一边计数。当再次回到这个结点时原创 2017-06-30 16:27:13 · 182 阅读 · 0 评论 -
字符流中第一个不重复的字符
题目:请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符”go”时,第一个只出现一次的字符是”g”。当从该字符流中读出前六个字符“google”时,第一个只出现一次的字符是”l”。输出描述:如果当前字符流没有存在出现一次的字符,返回#字符。思路:运用hash表的思想,首先初始化一个长度为256的int型数组,初值为0;以字符的值为下标进行赋值,如果出现一次,就赋原创 2017-06-30 11:07:58 · 265 阅读 · 0 评论 -
构建乘积数组
题目:给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…A[i-1]*A[i+1]…*A[n-1]。不能使用除法。思路:因为要求不能用除法,所以可以把B[i] 看做是 C[i] = A[0]*A[1]*…*A[i-1] 和D[i] = A[i+1]*…*A[n-1]的乘积。所以可以将C[i]和D[i]先求出,然后再求得B[i]。代原创 2017-06-30 09:39:24 · 181 阅读 · 0 评论 -
数组中重复的数字
题目:在一个长度为n的数组里的所有数字都在0到n-1的范围内、数组中的某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次,请找出数组中任意一个重复的数字,例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出的重复数组是2或者3。思路:第一时间肯定会想到先排序然后在找出重复的数字,排序一个长度为n的数组需要的时间复杂度是:nlogn第二种解法,哈希表,空间原创 2017-06-29 21:42:08 · 206 阅读 · 0 评论 -
扑克牌顺序
问题描述:LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子.....LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,原创 2017-06-19 21:44:11 · 1138 阅读 · 0 评论 -
翻转单词序列
问题描述: 牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么原创 2017-06-19 16:05:33 · 411 阅读 · 0 评论