上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 27 下一页
  2016年7月13日
摘要: 在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。例如,有一个数组为Array[0..n] 其中有元素a[i],a[j].如果 当i<j时,a[i]>a[j],那么我们就称(a[i],a[j])为一个逆序对。在数组{7,5,6, 阅读全文
posted @ 2016-07-13 11:39 已停更 阅读(476) 评论(0) 推荐(0)
  2016年7月12日
摘要: 用数组实现一个哈希表,存储元素次数 判断字符出现次数的类似问题可以考虑基于数组创建一个简单的哈希表 阅读全文
posted @ 2016-07-12 16:12 已停更 阅读(265) 评论(0) 推荐(0)
摘要: 题目:我们把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第1500个丑数。 分析:这是一道在网络上广为流传的面试题,据说google曾经采用过这道题。 所谓一个数m是另一个数n的因子 阅读全文
posted @ 2016-07-12 15:52 已停更 阅读(274) 评论(0) 推荐(0)
摘要: 这是一道广为流传的google面试题。用最直观的方法求解并不是很难,但遗憾的是效率不是很高;而要得出一个效率较高的算法,需要比较强的分析能力,并不是件很容易的事情。当然,google的面试题中简单的也没有几道。 硬上:O(nlogn) 方法二: 我们用一个稍微大一点的数字21345作为例子来分析。我 阅读全文
posted @ 2016-07-12 11:08 已停更 阅读(375) 评论(0) 推荐(0)
摘要: 当前面计算的和是负数时,就没必要再用前面的结果了,curSum就等于当前数字,另外一个比较关键的问题是maxSum初值为最大的负数,只有这样才能保证一个序列最大值为负数时的结果正确性 阅读全文
posted @ 2016-07-12 10:34 已停更 阅读(229) 评论(0) 推荐(0)
  2016年7月11日
摘要: 方法一:利用partition 方法二: 我们可以先创建一个大小为k的数据容器来存储最小的k个数字。接下来我们每次从输入的n个整数中读入一个数。如果容器中已有的数字少于k个,则直接把这次读入的整数放入容器之中;如果容器中已有k个数字了,也就是容器已满,此时我们不能再插入新的数字而只能替换已有的数字。 阅读全文
posted @ 2016-07-11 21:47 已停更 阅读(194) 评论(0) 推荐(0)
  2016年7月10日
摘要: 根据数组特点找出O(n)的解法: 考虑在遍历数组的时候保存两个值:一个是数组中的一个数字,一个是次数。当我们遍历到下一个数字的时候,如果下一个数字和我们之前保存的数字相同,则次数加1。如果下一个数字和我们之前保存的数字不同,则次数减1。如果次数为零,我们需要保存下一个数字,并把次数设为1。由于我们要 阅读全文
posted @ 2016-07-10 23:55 已停更 阅读(628) 评论(0) 推荐(0)
摘要: 总体上分为回溯和全排列 全排列(递归) 回溯(递归) 参考:http://www.cnblogs.com/codingmylife/archive/2012/10/04/2711839.html 阅读全文
posted @ 2016-07-10 13:30 已停更 阅读(635) 评论(0) 推荐(0)
  2016年7月8日
摘要: 字符串全排列是面试中常考的问题,一定要掌握 这题没写出来,思路就是把第一个字符和后面所有字符交换,然后递处理后面n-1个,最后需要在调用交换函数换回原始字符串 http://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7?tpId 阅读全文
posted @ 2016-07-08 16:36 已停更 阅读(307) 评论(0) 推荐(0)
摘要: 这块容易弄混,举几个简单例子: int ** 输出: 调试: 分析: 阅读全文
posted @ 2016-07-08 13:50 已停更 阅读(191) 评论(0) 推荐(0)
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 27 下一页