面试准备
文章平均质量分 66
jackycmu
我要成为一个优秀的googler
展开
-
总结leetcode上sort colors题C++的5种解法
Leetcode上的一道水题:Sort Colors Given an array with n objects colored red, white or blue, sort them so that objects of the same color are adjacent, with the colors in the order red, white and blue.原创 2014-01-02 08:36:10 · 1536 阅读 · 0 评论 -
twitter电面题目 - 同色最大联通子图
Given: 1. A graph contains red and blue nodes 2. Each node has up between 1 and n neighbors 3. Find the largest connected network of a given color, e.g. red R1 - B2 - B3 - R5 | | | |原创 2014-05-15 14:01:56 · 1278 阅读 · 0 评论 -
stl里关于heap的函数与priority_queue的区别
大家都知道,priority_queue是用堆实现的,可以通过重载原创 2014-05-17 02:17:06 · 3019 阅读 · 0 评论 -
“至少出现一次7”的数
给定一个正整数n,写一个算法计算从1到n之间有多少“至少出现一次7”的数。例如n=20,那么有两个出现7的数:7,17。原创 2014-05-10 10:33:35 · 653 阅读 · 0 评论 -
qsort函数、sort函数 (精心整理篇)
qsort函数、sort函数 (精心整理篇) 先说明一下qsort和sort,只能对连续内存的数据进行排序,像链表这样的结构是无法排序的。 首先说一下, qsort qsort(基本快速排序的方法,每次把数组分成两部分和中间的一个划分值,而对于有多个重复值的数组来说,基本快速排序的效率较低,且不稳定)。集成在C语言库函数里面的的qsort函数,使用 三 路划分的方法解决排序这个问题。所谓三路转载 2014-05-10 10:46:52 · 462 阅读 · 0 评论 -
递归的力量!!
递归是一门艺术,越是用的多,越是觉得递归不但威力无穷,还原创 2014-05-17 15:05:13 · 594 阅读 · 0 评论 -
gcc 优化选项 -O1 -O2 -O3 -Os 优先级,-fomit-frame-pointer
少优化->多优化: O0 -->> O1 -->> O2 -->> O3 -O0表示没有优化,-O1为缺省值,-O3优化级别最高 英文解析: `-O ' `-O1 ' Optimize. Optimizing compilation takes somewhat more time, a转载 2014-05-18 09:09:34 · 635 阅读 · 0 评论 -
动态规划--项目安排
题目来源:网易有道2013年校园招聘面试二面试题 题目描述: 小明每天都在开源社区上做项目,假设每天他都有很多项目可以选,其中每个项目都有一个开始时间和截止时间,假设做完每个项目后,拿到报酬都是不同的。由于小明马上就要硕士毕业了,面临着买房、买车、给女友买各种包包的鸭梨,但是他的钱包却空空如也,他需要足够的money来充实钱包。万能的网友麻烦你来帮帮小明,如何在最短时间内安排自己手中的转载 2014-05-14 04:36:38 · 720 阅读 · 0 评论 -
动态规划 - 之 - 矩阵链式乘法数
这也是个google的面试题,题目描述如下(): 假定有一组矩阵需要做乘法操作。但是我们知道首先矩阵乘法满足了结合律。所以可以按照不同的顺序做乘法。而且不同顺序做乘法最后的乘法次数是不同的。比如〈A1, A2, A3〉分别是10 × 100, 100 × 5, 和 5 × 50。如果按照((A1 A2) A3)的顺序来计算,就是7500次,但是如果(A1 (A2 A3))这样的顺序,那结果就转载 2014-05-14 08:24:57 · 965 阅读 · 0 评论 -
动态规划-最后剩下的是红糖的概率问题
有m个红糖,n个白糖,每次原创 2014-05-09 01:23:02 · 708 阅读 · 0 评论 -
动态规划 - 最长递增子序列
对一个子序列{1, 9, 3, 8, 11, 4, 5, 6, 4, 19, 7, 1, 7 }这样一个字符串的的最长递增子序列就是{1,3,4,5,6,7}或者{1,3,4,5,6,19}原创 2014-05-14 07:43:59 · 538 阅读 · 0 评论 -
要进入密集面试期了
从明天开始,面试各种扑面而来 明天twitter的原创 2014-05-14 10:25:36 · 993 阅读 · 0 评论 -
[Leetcode新题] Maximum Gap
题目: https://oj.leetcode.com/problems/maximum-gap/ 这一题用到了鸽笼原理,是非常经典的一道题。因为代码注释的非常详细,写的逻辑也比较清楚,复习的时候应该不会看不懂。 class Solution { public: int maximumGap(vector &num) { int size = num.size(), m原创 2015-01-08 06:21:44 · 725 阅读 · 0 评论 -
不使用vector<bool>的原因和替代方法
vecotr不是容器,至少,不是标准意义上的容器。 vector的名称有点让人误解,因为其内部元素实际上并不是标准的bool值,标准的bool值至少与char拥有一样的大小,从而可以被“正常”使用。 然而C++标准对于vecotr值有其特殊的实现方法。目的是为了减小空间的耗用。特殊版本内部只使用一个bit来存储一个元素,所以通常要比一般的bool值小8倍之多。转载 2014-05-08 13:00:57 · 5104 阅读 · 0 评论 -
ruby的一些面试题
· 1. 数组的元素是Hash,请按照Hash给数组排序 >> arr :name => 3, :type1 => 'b'} => [{:type1=>"a", :name=>1}, {:type1=>"c", :name=>2}, {:type1=>"b", :name=>3}] >> arr.sort_by{|x| x[:type1]} => [{:typ原创 2014-04-22 14:15:16 · 3640 阅读 · 0 评论 -
ORM是是非非
简单讲,开发的时候方便了(敏捷开发?),运行的时候慢了,而且,不能深入细节 一些参考吧 回答ruby面试三 用的 某人 写道 Advantages: Speeds-up Development - eliminates the need for repetitive SQL code. Reduces Development Time. Reduces转载 2014-04-22 13:54:11 · 639 阅读 · 0 评论 -
最快的排序方法(快归堆希)
书上说, 堆排序 归并排序 快速排序 最坏时间 O(nlogn) O(nlogn) O(n^2) 最好时间 O(nlogn) O(nlogn) O(nlogn) 平均时间 O(nlogn) O(nlogn) O(nlogn) 辅助空间 O转载 2013-12-23 12:06:52 · 1588 阅读 · 0 评论 -
毒药和老鼠的面试题
有 1000 个一模一样的瓶子,其中有 999 瓶是普通的水,有一瓶是毒药。任何喝下毒药的生物都会在一星期之后死亡。现在,你只有 10 只小白鼠和一星期的时间,如何检验出哪个瓶子里有毒药? 解答 : 根据2^10=1024,所以10个老鼠可以确定1000个瓶子具体哪个瓶子有毒。具体实现跟3个老鼠确定8个瓶子原理一样。 000=0 001=1 010=2 011=3 100=4 1转载 2013-12-23 04:24:46 · 1335 阅读 · 0 评论 -
codeeval评分标准解析
最近开始做codeeval的题目,评分标准比较有趣,用代码说明的: def get_submission_score(score, memory_taken, time_taken, category): """ @param score: the score which is received by test-cases原创 2013-12-26 10:04:02 · 1303 阅读 · 0 评论 -
一道面试题 - 找最长固定unique个数的子串
解法:用map记录当前的unique数,扫描一遍 /* 扫描的时候,如果unique数不超过,则继续从右边添加, 否则从左边持续删除,直到unique数回到正常的水平 */ int getLen(vector num, int unique) { int left, right, len = num.length(); int max_len = 0; left = right = 0;原创 2014-01-21 05:36:19 · 624 阅读 · 0 评论 -
深度优先遍历之迷宫生成算法
1、图的深度优先遍历简介 例如,要遍历上面这个图 采取深度优先算法(从1开始) 准备一个Stack s,预定义三种状态:A未被访问 B正准备访问 C已经访问 一、访问1,把它标记为已经访问,然后将于它相邻的并且标记为未被访问的点压入s 中并标记为正准备访问 此时系统状态: 已经被访问的点:1 还没有被访问的点:3 4 6 7 8 9 10 正准备访问的转载 2014-03-01 04:11:18 · 2724 阅读 · 0 评论 -
两种迷宫生成算法
这里要介绍两种迷宫生成的算法,Recursive Backtracking和Eller’s Algorithm。它们都生成的是Perfect maze,也就是说每个区域都连通,并且没有环的迷宫。 我们现在说Recursive backtracking: 迷宫的初始状态是墙壁都存在。选择一个开始区域。 随机得选择一个没有访问过的邻接区域,并打通与它之间的墙壁。此邻接区域称为当前区域。转载 2014-03-13 02:09:05 · 1893 阅读 · 0 评论 -
C++编译不了的C程序
有些C程序用C++编译器会报错,有如下几种情况: 1. 函数声明在使用之后: #include int main() { foo(); // foo() is called before its declaration/definition } int foo() { printf("Hello"); return 0; } 2. 普通指针指向常量变量翻译 2014-03-28 12:19:54 · 809 阅读 · 0 评论 -
基于C++模板的二分查找
自己实现了一个二分查找原创 2014-05-02 05:04:45 · 692 阅读 · 0 评论 -
用stl的binary_search写Search a 2D Matrix
不得不说STL太好用了,二分搜索都 class Solution { public: bool searchMatrix(vector > &matrix, int target) { int n = matrix.size(); if(n == 0) return false; int m = matrix[0].size();原创 2014-05-02 04:59:54 · 458 阅读 · 0 评论 -
过度热情计算(转)
http://cuitianyi.com/blog/%E8%BF%87%E5%BA%A6%E7%83%AD%E6%83%85%E8%AE%A1%E7%AE%97/ 在Mark Allen Weiss的《数据结构与算法分析:C语言描述》中有这样一道习题(3.22a)。大意是扩展Stack这种数据结构,让它除了支持通常意义下的Push和Pop以外还要支持一个GetMin操作(取当前栈中的最小元素转载 2014-05-07 08:51:02 · 529 阅读 · 0 评论 -
一道01背包问题(动态规划)
辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。” 如果你是辰辰,你原创 2014-05-07 02:17:10 · 701 阅读 · 0 评论 -
正向代理与反向代理的区别
正向代理的概念 正向代理,也就是传说中的代理,他的工作原理就像一个跳板, 简单的说, 我是一个用户,我访问不了某网站,但是我能访问一个代理服务器 这个代理服务器呢,他能访问那个我不能访问的网站 于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容 代理服务器去取回来,然后返回给我 从网站的角度,只在代理服务器来取内容的时候有一次记录 有时候并不知道是用户的请求,也隐藏转载 2014-04-22 13:35:22 · 368 阅读 · 0 评论 -
一个google的面试题 计算两个整数相除
Divide number and return result in form of a string. e.g 100/3 result should be 33.(3) Here 3 is in brackets because it gets repeated continuously and 5/10 should be 0.5.原创 2014-05-13 13:08:05 · 997 阅读 · 2 评论