由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - A电面一题 基本已挂
相关主题
说说面了几个老印的体会新鲜M $ 面经
现在怎么都是讨论offer的,没有做题的了?麻烦2爷peking2帮个忙
G家新鲜面经Tree的traversal也分BFS和DFS?
FG面经和感想serialize n-ary tree 一问
Amazon的序列化二叉树电面题面试复习总结
Data Structure 一题.Pinterest跪经
哪位有用stack实现postorder traversal BT现在刷LC有什么技巧吗?
mirror 一个binary tree, 用non-recursive解法怎么做刷题刷到什么境界就可以投简历了呢?
相关话题的讨论汇总
话题: csv话题: string话题: 节点话题: delimiter话题: when
进入JobHunting版参与讨论
1 (共1页)
h*****7
发帖数: 60
1
面试的人问了一些基础问题然后丢下这么一道让我写好发给他,也不知是写得比较慢还
是说有bug什么的,电面一轮一周多没下文应该是挂了吧?不过倒是可以讨论下这道题。
一般的树(几个child都可以),节点存的是string,string里面可以包括任何可以打
印出来的字符包括换行。要求将其序列化为csv文件还有反序列化。
我的做法是BFS,除了写csv之外再写一个header,里面记录每层有几个元素,每个元素
的string分别是多长。这个解法也是受本版某位牛人某篇回复的启发。读序列的时候就
两个文件配合。不知有没有更优的解法?
不知A会电面一面就挂人吗?快两周没消息了。
p*****2
发帖数: 21240
2
不容易写 可能做分母了
l***i
发帖数: 1309
3
这个估计大多数人都得挂,给你两小时写?
l*********8
发帖数: 4642
4
trie tree层次遍历吧?

题。

【在 h*****7 的大作中提到】
: 面试的人问了一些基础问题然后丢下这么一道让我写好发给他,也不知是写得比较慢还
: 是说有bug什么的,电面一轮一周多没下文应该是挂了吧?不过倒是可以讨论下这道题。
: 一般的树(几个child都可以),节点存的是string,string里面可以包括任何可以打
: 印出来的字符包括换行。要求将其序列化为csv文件还有反序列化。
: 我的做法是BFS,除了写csv之外再写一个header,里面记录每层有几个元素,每个元素
: 的string分别是多长。这个解法也是受本版某位牛人某篇回复的启发。读序列的时候就
: 两个文件配合。不知有没有更优的解法?
: 不知A会电面一面就挂人吗?快两周没消息了。

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

哪里看出来是trie?

【在 l*********8 的大作中提到】
: trie tree层次遍历吧?
:
: 题。

l*********8
发帖数: 4642
6
"一般的树(几个child都可以),节点存的是string", 这就暗示是trie tree吧?

【在 p*****2 的大作中提到】
:
: 哪里看出来是trie?

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

trie节点寸的是character吧?

【在 l*********8 的大作中提到】
: "一般的树(几个child都可以),节点存的是string", 这就暗示是trie tree吧?
o***d
发帖数: 313
8
让你写了多久?

题。

【在 h*****7 的大作中提到】
: 面试的人问了一些基础问题然后丢下这么一道让我写好发给他,也不知是写得比较慢还
: 是说有bug什么的,电面一轮一周多没下文应该是挂了吧?不过倒是可以讨论下这道题。
: 一般的树(几个child都可以),节点存的是string,string里面可以包括任何可以打
: 印出来的字符包括换行。要求将其序列化为csv文件还有反序列化。
: 我的做法是BFS,除了写csv之外再写一个header,里面记录每层有几个元素,每个元素
: 的string分别是多长。这个解法也是受本版某位牛人某篇回复的启发。读序列的时候就
: 两个文件配合。不知有没有更优的解法?
: 不知A会电面一面就挂人吗?快两周没消息了。

l*********8
发帖数: 4642
9
我怀疑面试官的意思是:每个leaf节点代表一个字符串。

【在 p*****2 的大作中提到】
:
: trie节点寸的是character吧?

k***a
发帖数: 1199
10
csv每行记录节点string,和其孩子们所在的行
内存序列化到文件类似问题的关键就是怎么用文件来记录指针,指针其实就是个位置,对
csv文件来说行数就可以当指针
碰到这样的问题就是bonus

题。

【在 h*****7 的大作中提到】
: 面试的人问了一些基础问题然后丢下这么一道让我写好发给他,也不知是写得比较慢还
: 是说有bug什么的,电面一轮一周多没下文应该是挂了吧?不过倒是可以讨论下这道题。
: 一般的树(几个child都可以),节点存的是string,string里面可以包括任何可以打
: 印出来的字符包括换行。要求将其序列化为csv文件还有反序列化。
: 我的做法是BFS,除了写csv之外再写一个header,里面记录每层有几个元素,每个元素
: 的string分别是多长。这个解法也是受本版某位牛人某篇回复的启发。读序列的时候就
: 两个文件配合。不知有没有更优的解法?
: 不知A会电面一面就挂人吗?快两周没消息了。

相关主题
Data Structure 一题.新鲜M $ 面经
哪位有用stack实现postorder traversal BT麻烦2爷peking2帮个忙
mirror 一个binary tree, 用non-recursive解法怎么做Tree的traversal也分BFS和DFS?
进入JobHunting版参与讨论
h*****7
发帖数: 60
11
我跟他确认了, 是每个节点存了一个string, 不是trie
我写了前前后后3个小时,包括辅助函数包括注释能有200多行吧,一看时间用太久也就
发给他了,头疼的要死也没写unit test。感觉就是要玩我啊。

【在 l*********8 的大作中提到】
: 我怀疑面试官的意思是:每个leaf节点代表一个字符串。
h*****7
发帖数: 60
12
因为string可以包括换行符,所以不能用换行来分别吧

【在 k***a 的大作中提到】
: csv每行记录节点string,和其孩子们所在的行
: 内存序列化到文件类似问题的关键就是怎么用文件来记录指针,指针其实就是个位置,对
: csv文件来说行数就可以当指针
: 碰到这样的问题就是bonus
:
: 题。

k***a
发帖数: 1199
13
没搞懂,换行在csv field中是必须转义的......弄个csv的lib,都给你处理好了

置,对

【在 h*****7 的大作中提到】
: 因为string可以包括换行符,所以不能用换行来分别吧
h*****7
发帖数: 60
14
原来如此,我也觉得这个有点怪,原来是自己不了解。

【在 k***a 的大作中提到】
: 没搞懂,换行在csv field中是必须转义的......弄个csv的lib,都给你处理好了
:
: 置,对

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

如果csv可以解决这个了。
那么一层存一行不久行了吗?做BFS。

【在 k***a 的大作中提到】
: 没搞懂,换行在csv field中是必须转义的......弄个csv的lib,都给你处理好了
:
: 置,对

h*****7
发帖数: 60
16
就算是一层存一行,怎么知道怎么分隔呢?理论上没法光凭csv的逗号判断也无法自己
插入任何分隔符,因为什么字符都可以包含

【在 p*****2 的大作中提到】
:
: 如果csv可以解决这个了。
: 那么一层存一行不久行了吗?做BFS。

o***d
发帖数: 313
17
个人觉得3个小时太久了,宁可1个小时写个大概,然后跟他说一下剩余的case的idea就好
了.
我自己猜阿....

【在 h*****7 的大作中提到】
: 我跟他确认了, 是每个节点存了一个string, 不是trie
: 我写了前前后后3个小时,包括辅助函数包括注释能有200多行吧,一看时间用太久也就
: 发给他了,头疼的要死也没写unit test。感觉就是要玩我啊。

e****e
发帖数: 418
18
IMHO, if we can make one double quote never appear in csv, then we can use
it as 分隔符.
Since Java uses escape like i.e. System.out.print( "\"" ) -> "
When writing into csv, we replace " with \" to make every " appeared in
string become \", so no single " will be in cvs.
It can be done by String method .replace( "\"", "\\\"" )
i.e. a"b -> a\"b
" -> \"
i.e.
tree:
1
" 3
csv
1
\", ", 3 ( The second element is delimiter.)
When deserializing, replace \" back to ".

【在 h*****7 的大作中提到】
: 就算是一层存一行,怎么知道怎么分隔呢?理论上没法光凭csv的逗号判断也无法自己
: 插入任何分隔符,因为什么字符都可以包含

o***d
发帖数: 313
19
还是不是很确定到底他要你怎么做.
综合上面的各位,那么solution:
1) PostOrder traverse
2) At each record of csv file, save children's line number first, then, use
another special token (say, :) to start string, which means the record saved
will look like this:
-1,-1:"first left"
-1,-1:"first right"
1,2: "root"
this is how it should work?
e****e
发帖数: 418
20
Breadth First Traversal. Don't need to save the line number. It's more like
the print by level with a delimiter inserted.

use
saved

【在 o***d 的大作中提到】
: 还是不是很确定到底他要你怎么做.
: 综合上面的各位,那么solution:
: 1) PostOrder traverse
: 2) At each record of csv file, save children's line number first, then, use
: another special token (say, :) to start string, which means the record saved
: will look like this:
: -1,-1:"first left"
: -1,-1:"first right"
: 1,2: "root"
: this is how it should work?

相关主题
serialize n-ary tree 一问现在刷LC有什么技巧吗?
面试复习总结刷题刷到什么境界就可以投简历了呢?
Pinterest跪经[面试题] 如何打印一个二叉树level by level?
进入JobHunting版参与讨论
o***d
发帖数: 313
21
这个不成把?你怎么判断这一层的字节点输出完毕?关键是string的内容可能跟
dilimiter一样.

like

【在 e****e 的大作中提到】
: Breadth First Traversal. Don't need to save the line number. It's more like
: the print by level with a delimiter inserted.
:
: use
: saved

e****e
发帖数: 418
22
read the my previous post on this thread.
The delimiter is ".

【在 o***d 的大作中提到】
: 这个不成把?你怎么判断这一层的字节点输出完毕?关键是string的内容可能跟
: dilimiter一样.
:
: like

s*******n
发帖数: 97
23
考虑简单一点
serialize: bfs 便利,每行第一个格存这个节点有多少个children,第二个格存节点
的内容
deserialize: 从第一行开始读文件line by line, 构造node 节点(包括内容和节点数)
,放到queue中。同时如果queue里面第一个node没满,那么当前的node就是它的一个
child。否则就是下一个node的children, if it is not full.
1 (共1页)
进入JobHunting版参与讨论
相关主题
刷题刷到什么境界就可以投简历了呢?Amazon的序列化二叉树电面题
[面试题] 如何打印一个二叉树level by level?Data Structure 一题.
print a BST level by level, last row first哪位有用stack实现postorder traversal BT
讨论个题目吧mirror 一个binary tree, 用non-recursive解法怎么做
说说面了几个老印的体会新鲜M $ 面经
现在怎么都是讨论offer的,没有做题的了?麻烦2爷peking2帮个忙
G家新鲜面经Tree的traversal也分BFS和DFS?
FG面经和感想serialize n-ary tree 一问
相关话题的讨论汇总
话题: csv话题: string话题: 节点话题: delimiter话题: when