由买买提看人间百态

topics

全部话题 - 话题: 往前面
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)
m***y
发帖数: 1
1
来自主题: JobHunting版 - 贡献一道G家的面试题
同意楼上peking2。从前往后,去A,从后往前,double B。
C代码如下:
#include
#define MAX_S_LENGTH 1024
void remove_a_double_b(char *s) {
int i, j, n, na, nb, nc; // nc is number of characters other than A
na = nb = 0;
j = 0;
for (i = 0; s[i] != '\0'; i++) {
if (s[i] == 'A')
na++;
else {
s[j] = s[i];
j++;
if (s[i] == 'B')
nb++;
}
}
n = i;
nc = j;
i = n - na + nb;
s[i] = '\0';
i--;
f... 阅读全帖
j********e
发帖数: 1192
2
来自主题: JobHunting版 - 攒个人品,发个google电话面试题
整个string就是一个大数,也不需要遍历一遍。
例如从中点开始,不是空格,往前走N个,往后走N个,就知道当前数肯定
比目标数大了,然后就跳去1/4位置。
你再想想?

最坏,大string就一个数,你当然要遍历一遍拉,你再想想
t**********h
发帖数: 2273
3
来自主题: JobHunting版 - 一道面试题:数组 in-place shuffle
我觉得他的意思是说前半截a1到an排好序了,后半截b1到bn排好序了,这样来扔。看原
题的描述,似乎是从b1这个数字的下标开始,每个bi依次往ai插
如果是这样的,和我们之前讨论的那个奇数往前扔,偶数往后扔,但是要保持原来的顺
序那道题是不一样
p*****2
发帖数: 21240
4
来自主题: JobHunting版 - L 电面2

从后往前扫,扫到一个单词就放到那个新的数组里。
t***t
发帖数: 6066
5
来自主题: JobHunting版 - G家onsite面经
说我的解法,看如何。
1. 找到pivot点。pivot点就是最接近key的node.
2. 保持俩指针,一个从pivot往前走一个往后走。
3. 每次每个指针看下一步,哪个abs(node.data-Key)小,那个指针前进一步。
4. 记住总步数,到了m步就停。
总时间复杂度log(n)+m
j*****7
发帖数: 10575
6
来自主题: JobHunting版 - facebook的面试题
感觉大家是不是太过复杂了,还是我看漏边界条件了。最简单的办法是从后往前找。例如
a="ab";
b="ac"
c="abac"
boolean[] visited = new boolean[c.length()]; // 用于标记当前index被用过没有
用a来从c的结尾开始找,都找到了
visited = {true, true, false, false}
然后用b来找那些标记为false的,也是从后向前找,都找到了
最后visited都是true,就成功了,否则return false
时间上是 2N
h****n
发帖数: 1093
7
我画个图你就明白了
比如:
head---->node--->node----->node----->node----->NULL
| |
node--->node-->NULL node--->NULL
|
node->NULL
第一次append之后变成:
head---->node--->node----->node----->node--->node--->node---NULL
| |
node--->NULL node-->NULL
第二次append之后变成
head-->node-->node-->node-->node-->node-->node-->node--->NULL
... 阅读全帖
h****n
发帖数: 1093
8
vector的删除可不止O(1),你要把所有后面的元素往前挪的
c********t
发帖数: 5706
9
来自主题: JobHunting版 - onsite求bless 附g家面试题
多谢讲解。基本思路应该就是这样。
但这道题我觉得本身限定很多。
第一,就是要given condition (a[0] >= a[1] && a[n-2] <= a[n-1]) 或者允许两头作
为local min
第二,就是不应该有duplicate (至少duplicate不相邻,否则遇到 a[mid-1] == a[mid
]==a[mid+1] 就不知道往哪里搜了。你的程序这种情况往前搜应该不对。
5,4,2,2,2,2,1,3
5,1,2,2,2,2,3,4

0]
need
p*****2
发帖数: 21240
10
来自主题: JobHunting版 - 这面经题怎么用动态规划做呢?

我一般都是从后往前的思路,如果recursive就是从前往后。这题你这么搞应该可以吧
,不过我脑子真不愿意这么想了。
K*****k
发帖数: 430
11
来自主题: JobHunting版 - 这面经题怎么用动态规划做呢?
动态规划是不是有两种刷法?
一种就是你这样在当前位置就先刷后面位置的。
另外一种是从当前位置往前找,用前面的位置刷当前的位置。

p*****2
发帖数: 21240
12

想了想关键是从后往前扫描这点太有用了,我一直没想到。这一点太赞了。看来思路还
是不够灵活。感觉如果对LinkedHashMap不熟,用HashSet+ArrayList也可以了。
e****e
发帖数: 418
13
IMHO, HashSet+ArrayList+从后往前扫描 is the best solution. Time complexity
is log(n+m), n is num of words, m is num of anagrams. The space complexity
is log(m).
Set set = new HashSet();
List list = new ArrayList();
for( int i = words.size()-1; i >= 0; i-- ) {
String sortedWord = sort( words.get( i ).toLowerCase() );
if ( !set.contains( sortedWord ) ) {
set.add( sortedWord );
list.add( word );
}
}
Collections.reverse( list );
return list;
p**o
发帖数: 3409
14
来自主题: JobHunting版 - 最郁闷的facebook面试+面经。
往前翻了一下,one-pass 的算法都是一样的。
其实本来就是暖手的练习题,玩不出什么花样来。
x********u
发帖数: 1150
15
来自主题: JobHunting版 - G新鲜面经
非牛人. 供讨论.
1.2 一个数组,找出一个solution使得1st《2nd, 2nd》3rd。。比如15462就是数组1
,2,4,5,6的一个solution。
从结果到条件往前推:
结果: aceg
分开来看:
a b>c>e>g
明显, b是一个特殊的数, 它大于一半的数, 小于一半的数. 所以b应该是中数. a应该
是b之前的一个数.
d and f 应该是中数后面的数; c,e,g 应该是中数前面的数.
那这样的分析后, 我们可以这么做:
1. 把input array先sort.
2. 把中数和中数前的数挑出来, 做b and a.
3. 中数后面的数挑出来做 d, f, ...
4. 中数前面的数挑出来做 c, e, g, ...
5. interleave 3 and 4
example:
1,2,3, 4,5,6, 7, 8
A. let b be 5, a be 4
B. 4<5<6<7<8
C. 5>3>2>1
interleave 后.
4<5>3<6>2<7>1<8
s********u
发帖数: 1109
16
来自主题: JobHunting版 - Google第二轮电面
各种不顺,早上apple来了拒信,下午google面的也不好,阿森纳还输球。。
可能还是沟通能力太差了,应该是很简单的题目,就是不知道他想说什么。
我发觉面试相比leetcode一大难度就是有时候面试官会说的比较vague,要靠自己问。
。要是他每次都直接把题目书写出来,倒是方便多了。。
就是实现一个strchr,只不过第二个参数不是字符,而是字符串,返回第一次出现的指
针。
/*
Find the first occurrence in str of _any_ character in set. Both are NULL
terminated ASCII C-strings. This is like strchr, except that the second
parameter functions as a set, rather than a single character.
str set returns
qxcdef csz str + 2 == &str[2]
axcdef wya str + 0 == &str[0]
axcdef cxa... 阅读全帖
f******n
发帖数: 208
17
来自主题: JobHunting版 - Google第二轮电面
以UTF-8为例,一个字符可以由1~4个char组成,通过查第一个字节可以判断该字符总共
有几个字节(其设计类似哈弗曼编码)。
1)构建哈希表的时候,先确定当前字符是几个字节,比如4个,那就把这4个当成一个
字符串,作为key存入哈希。然后跳过这四个字节,继续往前走。
2)扫描字符串的时候同理。
s********u
发帖数: 1109
18
来自主题: JobHunting版 - Google第二轮电面
各种不顺,早上apple来了拒信,下午google面的也不好,阿森纳还输球。。
可能还是沟通能力太差了,应该是很简单的题目,就是不知道他想说什么。
我发觉面试相比leetcode一大难度就是有时候面试官会说的比较vague,要靠自己问。
。要是他每次都直接把题目书写出来,倒是方便多了。。
就是实现一个strchr,只不过第二个参数不是字符,而是字符串,返回第一次出现的指
针。
/*
Find the first occurrence in str of _any_ character in set. Both are NULL
terminated ASCII C-strings. This is like strchr, except that the second
parameter functions as a set, rather than a single character.
str set returns
qxcdef csz str + 2 == &str[2]
axcdef wya str + 0 == &str[0]
axcdef cxa... 阅读全帖
f******n
发帖数: 208
19
来自主题: JobHunting版 - Google第二轮电面
以UTF-8为例,一个字符可以由1~4个char组成,通过查第一个字节可以判断该字符总共
有几个字节(其设计类似哈弗曼编码)。
1)构建哈希表的时候,先确定当前字符是几个字节,比如4个,那就把这4个当成一个
字符串,作为key存入哈希。然后跳过这四个字节,继续往前走。
2)扫描字符串的时候同理。
D**********d
发帖数: 849
20
来自主题: JobHunting版 - 面试题,字母替换问题
从前往后扫一遍,记录前面若全部变成 a 的替换数,与全部变成 b 的替换数。
从后往前扫一遍,记录后面若全部变成 a 的替换数,与全部变成 b 的替换数。
再扫一遍,对每个位置比较这四个数字,找最小的。
可以再优化:
1. 只记录全部变成 a 的替换数
2. 在扫第二遍时就找最小值。
w********s
发帖数: 214
21
来自主题: JobHunting版 - 请教一道FB面试题
而且从后往前读文件貌似不能用buffer啊,如果buffer输出的话,那结果就不是tail了
吧?如果一个buffer一个buffer输出的话,应该是从前往后顺序输出吧?
c******0
发帖数: 260
22
来自主题: JobHunting版 - 分享几个公司的面试题
从前往后扫,然后再从后往前。版上最近也有人面过这题,你搜搜。挺简单的
w*******u
发帖数: 10
23
来自主题: JobHunting版 - snapchat以及FLG 面经(已挂)

就是那么简单,用两个指针往前跑就好了。input可以看成string,不过KMP实在是我想
多了,后来感觉她没想让我写那个。
d****n
发帖数: 12461
24
例如len(P)=4
可以认为目标P就是1,2,3,4
原始S例如1,4,3,2
先考虑non-circular情形。计算所有的unordered pairs。例如上面(4,3),(4,2),(3,2)
就是。操作1只可以让unordered pairs增加或者减少1。所以最小操作就是unordered
pairs数目。
1432->1342->1324->1234
对于circular的情形,操作2可以让位置0的unordered pairs从k变成n-1-k。如果位置0
的数是i,那么就有i-1个unordered pairs,所以这个操作把i移到末尾以后关于i的
unordered pairs就变成了n-i。对于队尾的j,从n-j变成了j-1。i,j之间的交换只能算
一次,所以整体减少是2(i-j-1)+(i>j?),在i=j+1时等于1。
4321->1324->1234
对于中间的数,往前还是往后移动,这个再仔细计算一下。

edit
d****n
发帖数: 12461
25
例如len(P)=4
可以认为目标P就是1,2,3,4
原始S例如1,4,3,2
先考虑non-circular情形。计算所有的unordered pairs。例如上面(4,3),(4,2),(3,2)
就是。操作1只可以让unordered pairs增加或者减少1。所以最小操作就是unordered
pairs数目。
1432->1342->1324->1234
对于circular的情形,操作2可以让位置0的unordered pairs从k变成n-1-k。如果位置0
的数是i,那么就有i-1个unordered pairs,所以这个操作把i移到末尾以后关于i的
unordered pairs就变成了n-i。对于队尾的j,从n-j变成了j-1。i,j之间的交换只能算
一次,所以整体减少是2(i-j-1)+(i>j?),在i=j+1时等于1。
4321->1324->1234
对于中间的数,往前还是往后移动,这个再仔细计算一下。

edit
r*******2
发帖数: 104
26

好的,我把我的解题过程也说一下。Leetcode原题就不用说了。
第一组:
第1轮:判断subtree。假设两棵树T1和T2,先用DFS在T1里找到和T2的root一样的结点
,然后从找到的结点开始和T2进行比较,我用了BFS,就是用queue,一边一个queue,
同时push/pop进行比较,如果碰到不一样的就return false。做完了想起来其实就是
Leetcode上的Same Tree,直接还用DFS递归比queue省事。
第2轮:找出maze中的path。开一个matrix标记maze的每一个点是否访问过,然后DFS搜
索,从起点开始,查找它的上下左右邻居,如果没有访问过也没有obstacle,就作为一
个选择进行下一步搜索,一直递归下去直到找到终点为止。
第3轮:设计题。
第4轮:ASCII和Kanji字符的题以前面过,当时没做出来,答案就是回来网上搜的(参
考这个网址http://discuss.joelonsoftware.com/default.asp?interview.11.334807.4)。Spiral Matrix是Leetcode原题就不说了。
第... 阅读全帖
l********1
发帖数: 24
27
来自主题: JobHunting版 - 贡献一个groupon的电面题
最后不用真正的排序,从水桶后往前找k个元素
m*****k
发帖数: 731
28
来自主题: JobHunting版 - 攒人品发Google onsite面经
code起来感觉是比较tedious,
但本质上就是新来的size如果会使当前没填满的block溢出的话就去找block中刚好
sumup等于溢出量的size们(从后往前倒着找保证最小move, 而且可以证明一定可以找
到sumup等于溢出量的size们,这源于size都是2的次方),把他们放入新block,新
来的size加入到当前没填满的block使之填满,输出。
example:
[1 1 1 4 ], incoming 4, overflow 3, find the 3 1's that sumup to 3,
change to
[4 4 ] [1 1 1], 输出 4, 4, 当前没填满的block reset 为 [ 1 1 1]
x*******i
发帖数: 28
29
来自主题: JobHunting版 - facebook实习面经兼求bless

。。
我的做法跟你差不多。区别是先把字符从后往前modify,然后拷回前面去
x*******2
发帖数: 12
30
来自主题: JobHunting版 - 一道Facebook面经难题
如果两个词能组成palindrome的话, 那reverse中间短的那个字符串应该是另一个的
prefix
能不能用trie, 然后在trie的node上记录在children都为palindrome的部分.
在建trie的时候, 插入一个string S, 就沿着root开始在S从后往前consume character:
1. 如果S有字符剩余, 那么就判断剩余字符串是否为palindrome, 并在trie的node上标记
2. 如果S没有字符串剩余了, 那返回当前是palindrome的那些字符串
不知道如何做followup...
g***s
发帖数: 3811
31
来自主题: JobHunting版 - Bloomberg phone interview 面经
从前往后扫描一遍sumToNow,再从后往前扫描一遍

★ 发自iPhone App: ChineseWeb 8.6
d**********6
发帖数: 4434
32
来自主题: JobHunting版 - 发点面经回馈下本版的帮助
我老师介绍的办法是这样的,假设一个mXn的sorted matrix,目标t
他的从左上到右下的对角线也是sorted的,用一个binary search找到比t大和比t小的
两个临近点p1, p2
然后p1往后行又binary search
p2往前整行又binary search
复杂度是 O(log(sqrt(mXn))) + O(log(n)))
应该比那个人总结的都好啊
h****3
发帖数: 89
33
来自主题: JobHunting版 - G电面
为什么要用StringBuilder呀?
不是只要打印么,从后往前一个一个打印就行了吧
x*****n
发帖数: 195
34
来自主题: JobHunting版 - 一道google的面试题.
逆序扫描bytes的首bit就可以吧?
0,0 -》 one byte
0,1 -》 Not valid
1,0 -》 都有可能,继续往前扫描
1,1 -》 two bytes

byte
t*******2
发帖数: 182
35
来自主题: JobHunting版 - FLGU面经offer及杂谈
我也是这么想,不过这题复杂度应该是O(m*n)?
如果每往前走一步,看之前一步的最小cost都要把所有color过一遍的话,不就变成O(m
*m*n)了。。。
t*******2
发帖数: 182
36
来自主题: JobHunting版 - FLGU面经offer及杂谈
我也是这么想,不过这题复杂度应该是O(m*n)?
如果每往前走一步,看之前一步的最小cost都要把所有color过一遍的话,不就变成O(m
*m*n)了。。。
w******a
发帖数: 236
37
来自主题: JobHunting版 - 问个Facebook的面经题
是不是要先遍历字典里词的第一个字母,尽量多的往前放,然后依此类推。比如例子里
c,b,f应该要尽量放在第一个位置。
k****r
发帖数: 807
38
来自主题: JobHunting版 - 问一道面试题
3:
从尾巴往前找3变5,
1) 如果找不到在前面加3,后面都变3;
2)如果找到了,变5,后面也都变成3.
a***u
发帖数: 383
39
来自主题: JobHunting版 - 最近变硬那家的面经
需要啊,双指针,用hashmap记录 start和end之间每个char的次数,如果map size超过
m,start就往前走,直到map size=m位置。最后每个char visit2次 O(2n)=O(n)
l********6
发帖数: 129
40
来自主题: JobHunting版 - 问一道面经的题目
虽然没做过 但是目测复杂度也就是降到nlogn吧 不知道有没有大神能想出线性的解法
nlogn的话就从后往前遍历 用一个set存之前的那些数 然后拿到下一个数的时候 在set
里面找upperbound 然后得出upperbound前面有多少个数 再把这个数插到upperbound之
前 整体上相当于维护一颗bst(实际上是rbtree)
[在 lalo (lalo) 的大作中提到:]
:给一个数组,比如【5,2,6,1】
:对于5,它的右边有两个数字比它小;对于2,它的右边有一个比小;6的右边有1个比
它小;1的右边0个比它小.
:...........
l********6
发帖数: 129
41
来自主题: JobHunting版 - 问一道面经的题目
为什么是O(n)?你的while loop并不能保证每次查找upperbound的时间达到O(1)啊,你
的smaller存的是每一个A[i]的upperbound,但是每次查找的过程都是顺着smaller里面
存的下标往前找,直到找到第一个A[index]可以满足A[i] > A[indx],这是线性不是常
量的复杂度啊,方便的话求详解~~
l********6
发帖数: 129
42
来自主题: JobHunting版 - 再来问道面经题
拿个数组装54321
从后往前第一个是0,就是5,remove,数组里面还剩下4321
接下来是1,就是3,remove,数组里还剩下421
接下来是2,就是1,remove,数组里还剩下42
接下来是1,就是2,remove,数组里还剩下4
接下来是0,就是4,remove,数组空
但是复杂度不知道该怎么办。。。
s******4
发帖数: 24
43
来自主题: JobHunting版 - PayPal User & on Boarding组 staff 1面经
Phone(烙印)
1. a lot questions about database sharding/partitioning
2. merge 2 linkedin list(lc 原题 已经问烂了)
onsite(4烙印+1白人)
1. write producer/consumer for multi-threading environment(discussed
condition variable / synchronized), 建议看Java Condition API
2. find k-th largest element in unsorted array(lc 原题 已经问烂了)
3. 还有一个lc原题不记得了 也是很简单的
4. 在一个迷宫里,假设有一个机器人,怎么保证能走到出口。这个不画图比较难描述
。和一般bfs,dfs的区别就是,机器人只记得自己做过的决定(Left->Left->Straight
类似这样),没有整个图的概念。就想想一下自己在走迷宫好了。答案就是,一直往左
走,走到尽头就往回,没有左就往前走,没有前就往右走。然后会有一些followu... 阅读全帖
f*******r
发帖数: 976
44
来自主题: JobHunting版 - PayPal User & on Boarding组 staff 1面经
祝LZ早日拿到大offer,eBay,PayPal等都是烙印的老巢,不去也罢

Phone(烙印)
1. a lot questions about database sharding/partitioning
2. merge 2 linkedin list(lc 原题 已经问烂了)
onsite(4烙印+1白人)
1. write producer/consumer for multi-threading environment(discussed
condition variable / synchronized), 建议看Java Condition API
2. find k-th largest element in unsorted array(lc 原题 已经问烂了)
3. 还有一个lc原题不记得了 也是很简单的
4. 在一个迷宫里,假设有一个机器人,怎么保证能走到出口。这个不画图比较难描述
。和一般bfs,dfs的区别就是,机器人只记得自己做过的决定(Left->Left->Straight
类似这样),没有整个图的概念。就想想一下自己在走迷宫好了。答案就是,一直往左... 阅读全帖
f*********r
发帖数: 7485
45
来自主题: JobHunting版 - 其实刷题也不能改变命运
命运,就像我的自行车车轮下的路。你不能改变它,只能一圈又一圈的,往前面骑
l******e
发帖数: 956
46
来自主题: Living版 - 给推荐一个铲雪机吧(麻州)
刚订了这个
http://www.amazon.com/Yard-Machines-31B-040-800-12-5-Inch-Electric/dp/B0002IKVN6/ref=sr_1_4?ie=UTF8&s=hi&qid=1262009346&sr=1-4
看review还不错,往两边抛不远,往前面抛比较好。我们家的车道比较宽,不是很长,
两边都是草地,所以可以横着推。我喜欢它轻便,遇到厚的雪可以把它拿起来一层一层
地推。299的那个Toro 1800我也看了,review也很不错,就是对雪的高度也有限制,而
且比这个重,抬起来比较困难。
我在南麻州,一般雪要少些,除非是Northeaster,象这次大雪,是从海面上过来的才会
比内陆大。
等寄到了再来说说好用不好用。
p*****p
发帖数: 19331
47
来自主题: Living版 - 买了冰箱, 才知道不合适。
往前面突出是正常的,几乎所有的冰箱都这样,除了非常小的
s*****l
发帖数: 242
48
我们后院侧园的fence都是大家share的。我们家的后院门就直接对着后院,而邻居家的
后院门却开在我们两家之间的这个侧园这边。因为我们的房子间距窄,侧园比较窄。目
前他们的fence门就在他们房子后院门旁边一些,所以他们的patio的空间就不是很大。
现在邻居想把我们之间侧园的fence延伸到屋子前面去,然后把门也挪过去。这样他们
的侧园空间就大了。现在quote的是延长fence 1500刀。估计这个1500还包括把他们的
fence门往前面挪的价钱?不清楚了。不知道我们家要是挪门还要多少钱?邻居想来找
我们split这1500刀的cost。
我们没有更多围起来的侧园的空间的需求,我们后院以及patio的空间已经足够了。而
且因为两家距离离得近,建好fence以后其实会挡住我们的光线的,因为他们家在我们
的东边,地势也比我家高,还是2层的。所以我们不想split这个cost,但是如果他们要
做,我们也不反对。一开始谈过以后,邻居家里男的还比较合理说理解我们啊,我们确
实也没啥需求啊。结果我们谈完1个小时他就打电话来说,他老婆说,我们也有好处的
啊,增加privacy啊。这个倒是实话... 阅读全帖
R*****p
发帖数: 100
49
来自主题: Money版 - FIA神卡5%没人提?
早就有人总结过了吧?楼主注意往前面翻贴。
m*****8
发帖数: 2323
50
来自主题: NextGeneration版 - 单开一帖,为控制体重很认真的求建议
我怎么觉得自己大肚子很恶心阿,我每天都尽量穿宽松的衣服,直到二个星期前,人家
都不相信我将近6个月了。我体重也长了不少,但是,肚子的形状不是光往前面长,而
是在腰部均匀膨胀,真奇怪。
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)