由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 2道面试题
相关主题
终于弄明白median of two sorted arrays了,发帖庆祝一下问个google面试题
死或生(game of life)这题考点是啥问个Amazon面试题
攒人品 报BB面经L家onsite悲剧 贡献个面经吧
这题有好办法吗?请教一道G家面试题
请教这题怎么做啊leetcode 这题的解法是不是错了?
请教一个常见的面试题的答案请教两道面试题
顶风上来问道题:一个很大char[], 如何in-place 删除重复元素EE想转马工,system design无从下手
这题怎么做?G家SET面经新题求解
相关话题的讨论汇总
话题: int话题: char话题: string话题: st话题: level
进入JobHunting版参与讨论
1 (共1页)
c*********m
发帖数: 43
1
1.leetcode的手机键盘给数字,求各种字母组合的题。这题不准用递归,只用迭代该怎
么写啊?
2. 如何将一个大文件拷贝从一台机器拷贝到上千台server? 我觉得这问题是分布式应
用的replication,应该有论文探讨过这个。不知道谁有些好的idea或者知道相关的论
文?
p*****2
发帖数: 21240
2
第一题应该用stack和queue都可以。
l*****a
发帖数: 14598
3

这题不是循环吗?

【在 c*********m 的大作中提到】
: 1.leetcode的手机键盘给数字,求各种字母组合的题。这题不准用递归,只用迭代该怎
: 么写啊?
: 2. 如何将一个大文件拷贝从一台机器拷贝到上千台server? 我觉得这问题是分布式应
: 用的replication,应该有论文探讨过这个。不知道谁有些好的idea或者知道相关的论
: 文?

c*********m
发帖数: 43
4
二爷贴个代码吧,这题没想明白啊,用循环就行啦,谢谢!

【在 p*****2 的大作中提到】
: 第一题应该用stack和queue都可以。
c*********m
发帖数: 43
5
贴个代码瞅瞅?谢啦

【在 l*****a 的大作中提到】
:
: 这题不是循环吗?

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

1 abc
2 def
3 ghi
比如123
先算第一个,a,b,c
然后算第二个, ad, ae, af, bd, be, bf, ...
然后算第三个
这样就可以都算出来了。

【在 c*********m 的大作中提到】
: 贴个代码瞅瞅?谢啦
r*******e
发帖数: 7583
7

1 ABC
2 DEF
3 GHI
为例
string str;
cin >> str;
stack > s;
for (int i = 2; i >= 0; --i) {
s.push(make_pair('A' + (str[0] - '1') * 3 + i, 1));
}
vector > v;
while (!s.empty()) {
char c = s.top().first;
int level = s.top().second;
s.pop();
while (!v.empty() && v.back().second >= level) {
v.pop_back();
}
v.push_back(make_pair(c, level));
if (level == str.size()) {
for (int i = 0; i < str.size(); ++i) {
cout << v[i].first;
}
cout << endl;
} else {
for (int i = 2; i >= 0; --i) {
s.push(make_pair('A' + (str[level] - '1') * 3 + i, level + 1));
}
}
}

【在 c*********m 的大作中提到】
: 贴个代码瞅瞅?谢啦
b******7
发帖数: 92
8
排列问题的简化版,用stack回溯就可以了。
vector permutation(string digits)
{
char keyboard[][5] = { "abc", "def", "ghi", "jkl","mno","pqrs","tuv"
,"wxyz"};
vector st;
for(auto it = digits.begin(); it != digits.end(); ++it)
{
assert(*it >= '2' && *it <= '9');
st.push_back(keyboard[*it - '2']);
}
vector r;
while(true)
{
string temp = digits;
for(int i = 0; i < temp.length(); i++)
temp[i] = * st[i];
r.push_back(temp);
int i = (int)st.size() - 1;
while(i>=0 && *(st[i] + 1) == '\0')
i--;
if(i < 0)
break;
st[i]++;
for(int j = i+1; j < (int)st.size(); j++)
{
st[j] = keyboard[digits[j] - '2'];
}
}
return r;
}
1 (共1页)
进入JobHunting版参与讨论
相关主题
G家SET面经新题求解请教这题怎么做啊
请教一道onsite面试题请教一个常见的面试题的答案
一道面试题求助顶风上来问道题:一个很大char[], 如何in-place 删除重复元素
刚面了amazon这题怎么做?
终于弄明白median of two sorted arrays了,发帖庆祝一下问个google面试题
死或生(game of life)这题考点是啥问个Amazon面试题
攒人品 报BB面经L家onsite悲剧 贡献个面经吧
这题有好办法吗?请教一道G家面试题
相关话题的讨论汇总
话题: int话题: char话题: string话题: st话题: level