L_J_SHOU

2014年3月5日

Interview----链表的倒数第K个元素

摘要: 这个题虽然简单,但是一定要细心,bug-free 能力很重要。分析: 如果不知道链表的长度,可以采用双指针的方法,让一个指针先走 k 步,然后两个指针同时走,前面的指针变成 NULL时, 第一个指针即是倒数第k 个节点。。但是,考虑 k length 等情况。。关于双指针的另一个典型例题就是 求两... 阅读全文

posted @ 2014-03-05 21:43 L_J_SHOU 阅读(152) 评论(0) 推荐(0)
Interview----求 1+2+...+n, 不能用乘除法、for、while if、else、switch、case 等关键字以及条件判断语句 (A?B:C)

摘要: 题目描述:求 1+2+...+n,要求不能使用乘除法、for、while、if、else、switch、case 等关键字以及条件判断语句 (A?B:C)。分析:首先想到的是写递归函数,但是遇到一个问题,递归函数总需要一个出口,不然会无穷递归下去。出口一半是 if() return. 题目又要求不能... 阅读全文

posted @ 2014-03-05 19:33 L_J_SHOU 阅读(232) 评论(0) 推荐(0)

2014年3月4日

LeetCode---Word Break 2

摘要: Given a string s and a dictionary of wordsdict, add spaces ins to construct a sentence where each word is a valid dictionary word.Return all such poss... 阅读全文

posted @ 2014-03-04 16:59 L_J_SHOU 阅读(109) 评论(0) 推荐(0)

2014年2月28日

Interview---一道有趣的推理题

摘要: 题目描述:一个岛上有100个人,他们的眼睛只有两种颜色,蓝色和红色。95个人是黑色,其余5人是红色。他们有个宗教信仰,从不照镜子,所以他们自己不知道自己的眼睛的颜色。但是能看到其他人的眼睛。他们也不会告诉别人对方的眼睛的颜色。 如果一个人知道自己的眼睛是红色,他会立即在当天晚上自杀。对于岛民来说,他... 阅读全文

posted @ 2014-02-28 16:44 L_J_SHOU 阅读(210) 评论(0) 推荐(0)
Interview----判断两个链表是否相交?

摘要: 题目描述:判断两个单链表是否相交?假设链表没有环。假如链表有环呢?1. 假如没有环那么如果两个链表相交的话,必然最后的节点一定是同一个节点。所以只需要各自扫描一遍链表,找到最后一个节点,比较是否相同即可。O ( M + N)// version 1// test whether two lists ... 阅读全文

posted @ 2014-02-28 12:37 L_J_SHOU 阅读(162) 评论(0) 推荐(0)

2014年2月26日

数据结构《14》----并查集 Union-Find

摘要: 描述: 并查集是一种描述解决等价关系。能够方便地描述不相交的多个集合。 支持如下操作 1. 建立包含元素 x 的集合 MakeSet(x) 2. 查找给定元素所在的集合 Find(x), 返回所在集合的代表 3. 将两个不相交的集合合并 ... 阅读全文

posted @ 2014-02-26 19:51 L_J_SHOU 阅读(194) 评论(0) 推荐(0)
Interview----判断整数序列是否是二叉搜索树的后序遍历结果

摘要: 题目:输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果。如果是返回true,否则返回false。例如输入5、7、6、9、11、10、8,由于这一整数序列是如下树的后序遍历结果: 8 / \ 6 10/ \ / \5 7 9 11因此返回true。如果输入7、4、6、5,... 阅读全文

posted @ 2014-02-26 09:04 L_J_SHOU 阅读(145) 评论(0) 推荐(0)

2014年2月24日

LeetCode---- 二叉树中,找出和为某值的所有路径

摘要: Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given sum.For example:Given the below binary tree and sum ... 阅读全文

posted @ 2014-02-24 20:48 L_J_SHOU 阅读(219) 评论(0) 推荐(0)

2014年2月23日

STL 源码分析《2》----nth_element() 使用与源码分析

摘要: Select 问题:在一个无序的数组中 找到第 n 大的元素。思路 1: 排序,O(NlgN)思路 2: 利用快排的 RandomizedPartition(), 平均复杂度是 O(N)思路 3: 同样是利用快排的 Partition(), 但是选择 pivot 的时候不是采用随机,而是通过一种特... 阅读全文

posted @ 2014-02-23 17:22 L_J_SHOU 阅读(2071) 评论(0) 推荐(0)

2014年2月22日

算法----Magic Index

摘要: 给定一个数组 A,如果 某个下标 i, 满足 A[i] = i, 则 i 称为 Magic Index。现在假设 A 中的元素是递增有序的、且不重复,找出 Magic Index.更进一步,当数组中有重复的元素呢??分析:首先题目不难。最简单的当然是 扫描一遍数组,当然这个 O(N)的算法不是最优的... 阅读全文

posted @ 2014-02-22 23:37 L_J_SHOU 阅读(289) 评论(0) 推荐(0)