摘要: 问题描述在一个字符串中找到第一个只出现一次的字符。如输入字符串"abbc",应该输出字符'a'。程序public class FirstCharacter { // Time/Space: O(n) public char findFirstAppearChar(String s) { if (s... 阅读全文
posted @ 2015-07-03 10:26 Chapter 阅读(155) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/harrygogo/p/4599097.html中的层次遍历。 阅读全文
posted @ 2015-07-03 09:46 Chapter 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 问题描述输入一颗BST,将该树转换为它的镜像。要求使用递归和非递归两种思路解决。解决思路非递归基于BST。程序public class MirrorOfBST {public void toMirrorRec(TreeNode root) { if (root == null) { return ... 阅读全文
posted @ 2015-07-03 09:44 Chapter 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 问题描述输入一个升序排列的数组和一个数字。在数组中查找两个数,使得两个数之和等于指定的数。如果存在多对,只需要输出其中一对即可。解决思路类似于快排中的partition函数。时间复杂度为O(n)。程序public class TwoSum { public List getTwoNumOfSum(i... 阅读全文
posted @ 2015-07-03 09:11 Chapter 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 问题描述输入一个单向链表,输出该链表中倒数第K个节点,定义倒数第1个节点为链表的尾节点。如果K值超过链表长度,那么抛出异常。解决思路双指针法。程序public class LastKthNodeOfList { public ListNode getLastKthNodeOfList(ListNod... 阅读全文
posted @ 2015-07-03 09:02 Chapter 阅读(117) 评论(0) 推荐(0) 编辑