由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - Amazon 电面
相关主题
amazon第一轮电面一道大数据题
JAVA里sort的algorithm time complexity是多少Groupon电面
3-way Partition 算法不容易谁知道STL sort用的啥算法?
coding是不是用接口比较吊啊?问一道题
一道Coding面试题目2次电面后被amazon据了
顶风上来问道题:一个很大char[], 如何in-place 删除重复元素说说我的google电面
问个google面试题问一道最新G面题
一道非常伪善的面试题用bst怎么实现hashtable?
相关话题的讨论汇总
话题: book话题: price话题: int话题: rating话题: design
进入JobHunting版参与讨论
1 (共1页)
c**********e
发帖数: 48
1
Design question.
how to sort a list of books by seller rating first and then by price.
t*****j
发帖数: 1105
2
sell rating的可能值很少,有的是几星几星,数字的话最多是一位小数。
比如 1,2,3,4,5等相当于不同的bucket,先把书放进不同bucket,
然后根据价格排序。最后连起来就行。
design的话,可以考虑bucket总的是个大容器,里面有5个小容器桶,存书的ID和price
.每次新增加书或者书的rating变化的话,就插入到相应的桶里。桶里各个书的结构可
以用BST.
这样排序是O(nlogn),插入,删除,rating调整都是O(logn)
我瞎说的,请高人看看行不行。

【在 c**********e 的大作中提到】
: Design question.
: how to sort a list of books by seller rating first and then by price.

s*******t
发帖数: 248
3
Sounds good.

price

【在 t*****j 的大作中提到】
: sell rating的可能值很少,有的是几星几星,数字的话最多是一位小数。
: 比如 1,2,3,4,5等相当于不同的bucket,先把书放进不同bucket,
: 然后根据价格排序。最后连起来就行。
: design的话,可以考虑bucket总的是个大容器,里面有5个小容器桶,存书的ID和price
: .每次新增加书或者书的rating变化的话,就插入到相应的桶里。桶里各个书的结构可
: 以用BST.
: 这样排序是O(nlogn),插入,删除,rating调整都是O(logn)
: 我瞎说的,请高人看看行不行。

c**********e
发帖数: 48
4
我一开始也是focus on algorithm
但interviewer 很快提醒我 这是 design question 不是algorithm question.
可以选择任意语言 主要是问如何实现
for example, 可以用C++ STL的 quicksort 排序
要考虚的是如何设计类,如何传递排序的对象,参数等等
t*****j
发帖数: 1105
5
int ID=0;
Book {
Private:
static int ID,
char[40] name,
char[40] Publisher,
int Book_ID;
float Price;
float rate;
int num_of_rating;
Public:
Book(char* Name, int Name_length, float Price)
{set name, price; Book_ID = ID++;};
int GetBookID();
float GetPrice();
void SetPrice();
void getRate();
void UpdateRate(int rate1){};
...
};
s*****n
发帖数: 5488
6
文不对题。可能是要考decorator pattern,保证程序不变,排序方式任意组合。

【在 t*****j 的大作中提到】
: int ID=0;
: Book {
: Private:
: static int ID,
: char[40] name,
: char[40] Publisher,
: int Book_ID;
: float Price;
: float rate;
: int num_of_rating;

t*****j
发帖数: 1105
7
~~~~跪请各位高人给讲讲,这题到底是怎么做?

【在 s*****n 的大作中提到】
: 文不对题。可能是要考decorator pattern,保证程序不变,排序方式任意组合。
s*****n
发帖数: 5488
8
个人看法:
先定义出book对象,sort algorithm对象(应该是个decorator,就是可以pipeline到另
外一个alg对象上),然后需要定义less than, 定义adapter到STL quicksort。
public void sort()
{
call adaptoer method or obj from i to n.
for (i = k; i< booklist.count; i++)
{
if key[i] = key [j] continue;
else
if (mydecotor is not null)
mydecortor.setvalue(j, k);
mydecortor.sort();
}
大概框架应该是这样。

【在 t*****j 的大作中提到】
: ~~~~跪请各位高人给讲讲,这题到底是怎么做?
c*******w
发帖数: 63
9
可以把Books放到一个Array吗? 然后
Arrays.Sort(bookArray, new BookCompare())
事先定义一个Class BookCompare implements Comparator
{
//Override the compareTo method
public int compareTo(Book book1, Book book2)
{
//rating first
//if a tie, based on price
}
}
1 (共1页)
进入JobHunting版参与讨论
相关主题
用bst怎么实现hashtable?一道Coding面试题目
ebay 电面顶风上来问道题:一个很大char[], 如何in-place 删除重复元素
请教个面试题:大数据求中值问个google面试题
面完fb,结果已经出来了,share下被拒的原因(请转jobhunting版 (转载)一道非常伪善的面试题
amazon第一轮电面一道大数据题
JAVA里sort的algorithm time complexity是多少Groupon电面
3-way Partition 算法不容易谁知道STL sort用的啥算法?
coding是不是用接口比较吊啊?问一道题
相关话题的讨论汇总
话题: book话题: price话题: int话题: rating话题: design