由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - L家 index设计题
相关主题
新鲜M $ 面经G家电面的两个题
这几个题目怎么做啊rebuild a tree from inorder and level order
这个check whether a binary tree is a BST or notA公司面挂了,发面经,攒RP
问两道google面试题亚麻 三连击
"Hacking a G Interview"怎么有这样低级错?大家帮忙看看 问题在哪啊?由preorder 来建 bst,为什么后面没
问到G家题墙街某IB招IT(三次更新,已招到人)
请问leetcode的Binary Search Tree Iterator算法题:如何将排列映射到编码?
Zillow screen 面经,兼打听工资谷歌电面回馈
相关话题的讨论汇总
话题: int话题: sum话题: index话题: carry话题: result
进入JobHunting版参与讨论
1 (共1页)
s*******m
发帖数: 228
1
Given a large number of records (with increasing but not necessarily
consecutive sequence number), design a indexing scheme
factorial digits sum。比如input为10,因为10!= 3628800,就应该返回sum的值 =
3+6+2+8
l*****n
发帖数: 246
2
第一题能说的具体一点吗?不是很明白是什么意思啊?
第二题不就是array相乘嘛,贴个代码练习一下:(跑了几个test case,应该是对的)
public int factorialDigitsSum(int n){
int sum = 0;
int[] pre = intToArray(n);
for(int i=n-1; i>=2; i--){
int[] curr = intToArray(i);
pre = multiply(pre, curr);
}
for(int i=0; i sum += pre[i];
}
return sum;
}
private int[] intToArray(int n){
int size = 0;
int copy = n;
while(copy!=0){size++; copy /= 10;}
int[] arr = new int[size];
copy = n;
for(int i=0; i arr[i] = copy%10;
copy /= 10;
}
return arr;
}
private int[] multiply(int[] pre, int[] curr){
int[] result = new int[pre.length + curr.length];
int carry = 0;
for(int i=0; i for(int j=0; j result[i+j] += pre[i]*curr[j] + carry;
carry = result[i+j]/10;
result[i+j] %= 10;
}
if(carry != 0){
result[i+curr.length] += carry;
carry = 0;
}
}
return result;
}
s*****s
发帖数: 94
3
第一题没idea啊,求大牛指点
l******s
发帖数: 3045
4
第一题是要构造BST么?
s*****s
发帖数: 94
5
database自带的index功能本身就是BST, 这是要考如何实现database里面的index么

【在 l******s 的大作中提到】
: 第一题是要构造BST么?
l******s
发帖数: 3045
6
大概是这个目的,要是要求平衡的,就是被黑了。

【在 s*****s 的大作中提到】
: database自带的index功能本身就是BST, 这是要考如何实现database里面的index么
k****i
发帖数: 128
7
第一题没说清楚,这种题都要问支持什么操作的。如果只是一个O(1)的look up,用
hashtable就行,如果是要支持ordered iteration,用B+-tree
g*********e
发帖数: 14401
8
第一题是online streaming系统
具体参考kafka
说btree的都fail了

=

【在 s*******m 的大作中提到】
: Given a large number of records (with increasing but not necessarily
: consecutive sequence number), design a indexing scheme
: factorial digits sum。比如input为10,因为10!= 3628800,就应该返回sum的值 =
: 3+6+2+8

m*********r
发帖数: 19
9
求大牛给详细一点的解释
没太明白

【在 g*********e 的大作中提到】
: 第一题是online streaming系统
: 具体参考kafka
: 说btree的都fail了
:
: =

s*****s
发帖数: 94
10
是不是大约这个意思, 问的不是数据库里面如何做index而是kafka内部如何做index
0.8中增加了逻辑offset,那么就需要做逻辑offset和物理地址间的转化
简单的方法,直接用hashmap,cache所有offset,问题就是这样空间耗费比较大
所以kafka的方式,是分段索引,用offset通过二分查找中index中找出段的起始地址,
然后再去file里面遍历找出精确的地址, 时间换空间的设计
1. LogSegment.translateOffset
首先是从index文件中找到近似的物理地址
前面说了,index中从效率考虑并不会为每个offset建立索引entry,只会分段建立
offset索引, 所以从index中直接可以找到精确物理地址的概率不大,但是可以找到最
接近的那个物理地址
如果你觉得index的粒度比较粗,可以直接给出开始查找的startingFilePosition
所以精确的物理地址需要到MessageSet文件里面去继续找

【在 g*********e 的大作中提到】
: 第一题是online streaming系统
: 具体参考kafka
: 说btree的都fail了
:
: =

1 (共1页)
进入JobHunting版参与讨论
相关主题
谷歌电面回馈"Hacking a G Interview"怎么有这样低级错?
讨论两道L家的设计题问到G家题
今天面试惨败,分享面经请问leetcode的Binary Search Tree Iterator
攒人品:google电面面经Zillow screen 面经,兼打听工资
新鲜M $ 面经G家电面的两个题
这几个题目怎么做啊rebuild a tree from inorder and level order
这个check whether a binary tree is a BST or notA公司面挂了,发面经,攒RP
问两道google面试题亚麻 三连击
相关话题的讨论汇总
话题: int话题: sum话题: index话题: carry话题: result