Brown CS 18 fall 入学感受

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投
内推多家公司面试
坐标湾区
DreamCraft创始团队
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
高效直聘+内推,70%面试率
AI帮你免费完善简历
直击全美十万个科技职位
把贵司招聘信息放这里
查看: 605|回复: 4
收起左侧

[编程题] 求问, sparse dot vector multiplication

[复制链接] |试试Instant~
我的人缘0
mycoy 发表于 2017-12-6 11:51:23 | 显示全部楼层 |阅读模式
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  71% (230)
 
 
28% (93)  踩

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?Sign Up 注册获取更多干货

x
经常看到FB的一道题, sparse dot vector multiplication

我觉得应该两种cases:
case1:  (1*n)  * (n*1) = (1)  
case2:  (n*1) * (1*n) = (n*n),  //case2 其实就是 sparse matrix multiply.

所以应该是 Sparse dot vector multiplication 指的应该是case1; 但是感觉代码应该很简单的,
  1.         public int vectorMultiply(int[] A, int B[]){
  2.                 int n = A.length;
  3.                 int result = 0;
  4.                
  5.                 for(int i=0; i<n; i++){
  6.                         if(A[i] == 0 || B[i]==0)
  7.                                 continue;
  8.                        
  9.                         result += A[i] * B[i];
  10.                 }
  11.                 return result;
  12.         }
复制代码
请问我的代码有问题吗, 这个问题有什么tricky的地方吗?
谢谢

上一篇:聊聊coding面试
下一篇:有用javascript刷题的吗?
我的人缘0
trumpet1987 发表于 2017-12-6 12:11:43 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  100% (36)
 
 
0% (0)  踩
这个问题主要的考察点应该在于如何表示sparse vector/matrix,以及如何用sparse representation来进行乘法。如果已经给出dense representation,其实没什么太大意义。
回复

使用道具 举报

全球28万学生4.7分推荐
我的人缘0
cascade15 发表于 2017-12-7 14:01:19 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  82% (32)
 
 
17% (7)  踩
同意楼上的,这么做没有利用上sparse的条件
回复

使用道具 举报

我的人缘0
alex.chan 发表于 2017-12-8 00:36:44 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  95% (126)
 
 
4% (6)  踩
这个题目,
你的输入应该是两个已经用 (index ,value)存好的sparse list
回复

使用道具 举报

我的人缘0
jason123 发表于 2018-2-4 01:07:01 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  93% (14)
 
 
6% (1)  踩
你应该把输入改成两个2d array,里面随机填写0 和 1,然后输出是另外一个2d array
回复

使用道具 举报

游客
请先登录

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

手机版|小黑屋|一亩三分地论坛声明

GMT+8, 2018-10-19 04:55

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表