加载中
http请求报文挂起案例

问题描述 最近在生产上出现了多次java应用服务器挂死的情况。 问题分析 从堆栈中可以看到大量的线程挂在 at java.net.SocketOutputStream.socketWrite0(Native Method) at java.n...

2017/02/26 13:59
27
Java基本类型-整型解读

java的基本类型包括以下几类: 整型 byte short int long 浮点型 float double 字符型 char 布尔型 boolean 它们都有对应的包装类型(如果没有特殊说明,下面都是说包装类型),其中整型和浮点型...

2017/02/16 21:18
30
AST

以select语句为例,入口在session.go中的Execute方法。 首先,sql需要解析成AST,这个步骤是通过ParseSQL进行处理的,这块需要了解一下lex+yacc原理,看得懂parser.y中的规则定义。AST的结构...

2017/12/11 11:49
20
LeetCode题解-16-3Sum Closest

解题思路 题目要求找到数组中a+b+c最接近target的和。思路和15题是类似的,也是排序采用二层遍历,计算出目标值c,用二分查找,如果找到就可以直接返回,如果没有找到,那就是找到插入的位置...

2017/03/15 20:36
23
LeetCode题解-15-3Sum

解题思路 题目要求找到数组中所有a+b+c=0的数字。朴素算法是三层遍历,复杂度是O(n^3)。 我的思路是首先对数组排序,需要O(nlogn),然后对a,b进行二层遍历并对c进行二分查找,需要O(lognn^2)。...

2017/03/15 20:35
15
LeetCode题解-14-Longest Common Prefix

解题思路 题目是要寻找所有字符串中最长的公共开头部分。我的做法是对于某个位置的字符,看看其他字符串同样的位置是否也是这个字符,如果是则继续往后找,如果不是则表示最长的公共开头部分...

2017/03/15 20:34
3
LeetCode题解-13-Roman to Integer

解题思路 题意是说罗马数字转成普通数字。 这个题目和12题是类似的,首先要理解罗马数字的表示法,它是按大小结合顺序来的,前面几个字母组合起来如果能够解释成较大的数字,那就使用这个表示...

2017/03/04 22:01
2
LeetCode题解-12-Integer to Roman

解题思路 题意是说把1~3999之间的数字转成罗马数字。 首先要理解罗马数字的表示法,它是按大小结合顺序来的,前面几个字母组合起来如果能够解释成较大的数字,那就使用这个表示,而不是按举个...

2017/03/04 21:59
5
LeetCode题解-11-Container With Most Water

解题思路 题意是说,有一堆有序的数字ai,要计算min(ai,aj)*abs(i-j)的最大值,普通的算法就是列举所有的情况,时间复杂度是O(n^2)。下面介绍一下O(n)的思路。 首先记录左边是left,右边是rig...

2017/03/04 21:58
3
LeetCode题解-10-Regular Expression Matching

解题思路 思路是动态规划。 假设s是待匹配字符串,p是表达式。定义数组matchs,其中matchs[i,j]表示s[0,i)和p[0,j)是否匹配,那么结果就是求matchs[s长度加1,p长度加1]。 对于matchs[i,j]分以...

2017/03/02 21:35
15
LeetCode题解-9-Palindrome Number

解题思路 判断数字是否是回文数。非常简单,用rev做累计,每次取原值的最后一位累计上去,最后判断rev是否和原值相同即可。 参考源码 public class Solution { public boolean isPalindr...

2017/03/02 21:34
5
LeetCode题解-8-String to Integer (atoi)

解题思路 这个题目是要把一个字符串转成整数。按照以下思路: 判断是否正数还是负数 用一个value记录当前计算到的数值,每次找到一位就做乘10再加上新的数字 需要特别处理超过最大最小值的情况...

2017/03/02 21:33
2
LeetCode题解-7-Reverse Integer

解题思路 这个题目是反转一个整数,但是要求如果出现溢出的时候返回0。思路如下: 如果是负数,考虑先转成正数再处理,所以对MIN_VALUE先要做特殊处理。 现在都是正数了,反转结果用一个long来...

2017/02/26 11:40
4
LeetCode题解-6-ZigZag Conversion

解题思路 这个题目我是分2种情况来考虑的,考虑首行和最后一行,每个数的间隔是2*(numRows-1), 对于中间其他行,那么的间隔是2*(numRows-1)-2row或者2row, 其中row表示当前所在的行号。算法是...

2017/02/23 20:56
13
LeetCode题解-5-Longest Palindromic Substring

解题思路 题目是查找最长的回文子串。 如果某个字符串是一个回文串,那么形式可能是cbabc,或cbaabc的形式,要找到最长的回文子串,可以以某个字符a开始,区分长度是奇数还是偶数,向左右两边...

2017/02/23 14:31
2
LeetCode题解-4-Median of Two Sorted Arrays

解题思路 这个题目是说在两个已排序的数组中找到中间的数,并且要求复杂度是O(ln(m+n))。看到这个复杂度要求,就不能使用简单的数组合并后取中间位置,而是要考虑类似二分法之类的算法。 算法...

2017/02/22 09:52
4
Integer位操作技巧解析

整数二进制左边1最早出现的位置 public static int highestOneBit(int i) { // HD, Figure 3-1 i |= (i >> 1); i |= (i >> 2); i |= (i >> 4); ...

2017/02/19 09:33
6
LeetCode题解-3-Longest Substring Without Repeating Characters

解题思路 首先要读懂题目,它要求的是找到最长的子串,并且子串中没有出现重复的字符。 我的想法,是用一个map存储每个字符最后出现的位置,还要有个变量start,它用来记录上一次出现重复的位...

2017/02/18 16:32
9
LeetCode题解-2-Add Two Numbers

解题思路 这个题目也是比较简单的。主要需要考虑的是如何处理l1和l2长度不一致的情况,进位的处理,还有特别考虑最后一次进位的情况。 为了简化处理,我采用了一个哑结点作为head,用carry下...

2017/02/17 21:44
7
LeetCode题解-1-Two Sum

解题思路 这主要是给第一次接触LeetCode的童鞋准备的。 题目说给定一个整型数组和一个数字,希望找到2个位置,这2个位置的和等于给出的数字。解题思路很简单,用一个两层遍历穷举就可以了,如...

2017/02/17 21:36
2

没有更多内容

加载失败,请刷新页面

返回顶部
顶部