摘要: 本文转载自https://www.ibm.com/developerworks/cn/java/j-lo-javaio/index.html Java 的 I/O 类库的基本架构 I/O 问题是任何编程语言都无法回避的问题,可以说 I/O 问题是整个人机交互的核心问题,因为 I/O 是机器获取和交换 阅读全文
posted @ 2018-12-14 13:54 青衫z 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 这道题让我和难受,我的代码丑陋不说,还没有通过。先看一下题目描述: 从题目描述看确实很简单,先看一下我的代码: 我的代码有一种情况过不去,就是" "有数个空格组成的字符串,再来看一个正确的代码: 就一行,但是包括了所有情况。其实可以看出和我最后一行的return只多了一个trim方法,而我的第二个i 阅读全文
posted @ 2018-11-23 16:48 青衫z 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 这道题是一道我认为非常好的题,它让我初步认识了动态规划思想。先看一下题目描述: 无序的数组中找到一个具有最大和的连续子数组,返回值是和,这道题有许多种解法,但是我思考了20分钟也没有写出来,这篇文章重点说一下用动态规划来解这道题,分治思想另篇说起,先上代码: 非常唯美的代码。简洁明了,这里用到了dp 阅读全文
posted @ 2018-11-22 17:32 青衫z 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 这道题我认为并不是特别的好,非常难以理解提议,leetcode很多人也抗议这道题的题意表述,而且我也想不出来解决的方法。先看一下描述: 我来解释一下,其实就是解释上一项的意思。第一项是1,第二项是描述第一项“1个1”,所以是11,第三项描述第二项“2个1”,所以是21,以此类推。上代码: 阅读全文
posted @ 2018-11-22 10:54 青衫z 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 这是我第一道通过自己独立思考通过的代码,虽然题目简单,但是还是很激动!先看一下题目描述: 题目描述的很清楚,一定要仔细读题,直接上代码: 但是它只击败了36.8%的提交代码,可以看出虽然通过,但是代码不是很友好,肯定有更好的方法。果然找到了运用二分查找解决: 阅读全文
posted @ 2018-11-21 16:39 青衫z 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 想先看一下题目描述: 这个题很简单,但是我第一次做题的时候没有理解题意。needle里的元素要在haystack里全部体现。并且还需要注意数组越界问题。 但是我不太理解为什么i < haystack.length() - len + 1,这样可以防止数组越界,但是原因还没有搞清楚。 阅读全文
posted @ 2018-11-21 15:58 青衫z 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 先看一下题目描述: d 同样借助双指针。 阅读全文
posted @ 2018-11-21 15:44 青衫z 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 先看一下题目描述: 注意这道题返回的是新数组长度,输出的是数组。这道算法需要两个指针(快指针和满指针)来实现 j从1索引开始遍历,遇到相同的则j++(跳过)。遇到不同的,将nums[j]的值赋予nums[i] 阅读全文
posted @ 2018-11-21 15:04 青衫z 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 先看一下题目描述: 这是一道查看链表知识的算法题,要求非常简单,合并两个有序链表,但是这道题我理解起来非常吃力,花了很久也不能说理解透了。可能对链表的理解还是不够深刻。这道题有两个解法,递归解法和非递归解法。其中递归解法思路非常犀利,如果对递归思想没吃透的话很难想到。先看非递归版本的: 注意这里用到 阅读全文
posted @ 2018-11-21 14:55 青衫z 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 先看一下题目描述: 通过题目描述可以清楚的明白题目规则,输出true或者false。这道题需要用借用栈来实现,不说理解直接放代码 还有一种进阶版,代码更少,但是思路更犀利,不太容易想到,同样借助栈 其实两段代码思路一模一样,非常巧妙 阅读全文
posted @ 2018-11-21 14:43 青衫z 阅读(122) 评论(0) 推荐(0) 编辑