在国外一跟老外吵架口语立刻就不够用了

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
E轮2.5亿美元融资
K12教育独角兽一起作业
北京-诚聘人工智能/教育/大数据岗
坐标湾区
Games Startup
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
码农求职神器Triplebyte:
不用海投
内推多家公司面试
把贵司招聘信息放这里
查看: 2281|回复: 6
收起左侧

Zillow phone interview

[复制链接] |试试Instant~ |关注本帖
johnnywsd 发表于 2015-5-11 13:25:55 | 显示全部楼层 |阅读模式

2015(4-6月) 码农类General 硕士 全职@Zillow - 网上海投 - 技术电面  | Other | 在职跳槽

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

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

x
Zillow

Given  a sorted array of integers. Find the median of the items that greater than or equal to an threashold.
. 牛人云集,一亩三分地
int find_median( int[] array, int threashold)
. 留学申请论坛-一亩三分地
For example:
array = [ 1, 2, 3, 4, 5, 6, 7, 8, 9]
threashold = 5
return median = 7
-google 1point3acres
. 围观我们@1point 3 acres

评分

1

查看全部评分

 楼主| johnnywsd 发表于 2015-5-11 13:26:59 | 显示全部楼层
  1. class Solution:

  2.     def find_median(self, array, threashold):
  3.         lst = [x for x in array if x >= threashold]
  4.         length = len(lst)
  5.         if length == 0:
  6.             return 0
  7.         elif length % 2 == 0:
  8.             m1 = length / 2
  9.             m2 = length / 2 - 1. 1point3acres
  10.             return (lst[m1] + lst[m2]) / 2. 1point3acres
  11.         else:. Waral 博客有更多文章,
  12.             m = length / 2
  13.             return lst[m]
复制代码
Running Time: O(n).
回复 支持 反对

使用道具 举报

 楼主| johnnywsd 发表于 2015-5-11 13:28:59 | 显示全部楼层
  1. class Solution:

  2.     def find_median(self, array, threashold):
  3.         first_idx = self._find_first_idx(array, threashold)
    . more info on 1point3acres
  4.         lst = array[first_idx:]
  5.         length = len(lst)
  6.         if length == 0:
  7.             return 0
  8.         elif length % 2 == 0:
  9.             m1 = length / 2
  10.             m2 = length / 2 - 1. 围观我们@1point 3 acres
  11.             return (lst[m1] + lst[m2]) / 2
  12.         else:
  13.             m = length / 2
  14.             return lst[m]. 留学申请论坛-一亩三分地

  15.     def _find_first_idx(self, array, threashold):
  16.         l = 0
  17.         r = len(array) - 1
  18.         while l <= r: 来源一亩.三分地论坛.
  19.             m = (l + r) / 2
  20.             mid = array[m]. 留学申请论坛-一亩三分地
  21.             mid_pre = array[m - 1] if m - 1 >= 0 else None
  22.             if mid == threashold and \
  23.                     (mid_pre is None or mid_pre < threashold):
  24.                 return m-google 1point3acres
  25.             elif mid == threashold and mid_pre == threashold:
  26.                 r = m - 1
  27.             elif mid > threashold:
  28.                 r = m - 1
  29.             elif mid < threashold:
  30.                 l = m + 1
    . more info on 1point3acres
  31.         return l
复制代码
Running Time: O(log n)
回复 支持 反对

使用道具 举报

 楼主| johnnywsd 发表于 2015-5-11 13:29:38 | 显示全部楼层
  1. import unittest
  2. from solution import Solution
  3. from solution import Solution as Solution2


  4. class Test(unittest.TestCase):. 留学申请论坛-一亩三分地

  5.     def test1(self):
  6.         s = Solution()
  7.         array = [1,2,3,4,5,6,7,8,9]
  8.         threashold = 5
  9.         res = s.find_median(array, threashold)
  10.         self.assertEqual(res, 7)
  11.         s2 = Solution2()
  12.         res = s.find_median(array, threashold)
  13.         self.assertEqual(res, 7).留学论坛-一亩-三分地

  14.     def test2(self):
  15.         s = Solution()
  16.         array = [1,2,3,4,5,6,7,8,9]
  17.         threashold = 9
  18.         res = s.find_median(array, threashold). From 1point 3acres bbs
  19.         self.assertEqual(res, 9)
    . 1point 3acres 论坛
  20.         s2 = Solution2()
  21.         res = s.find_median(array, threashold).1point3acres网
  22.         self.assertEqual(res, 9)

  23.     def test3(self):
  24.         s = Solution()
  25.         array = [1,2,3,4,5,6,7,8,9]
  26.         threashold = 0
  27.         res = s.find_median(array, threashold)
  28.         self.assertEqual(res, 5)
  29.         s2 = Solution2()
  30.         res = s.find_median(array, threashold)
  31.         self.assertEqual(res, 5)
  32. . visit 1point3acres for more.
  33.     def test4(self):
  34.         s = Solution()
  35.         array = [1,2,3,4,5,6,7,8,9]
  36.         threashold = 2
  37.         res = s.find_median(array, threashold)
  38.         self.assertEqual(res, 5) 来源一亩.三分地论坛.
  39.         s2 = Solution2()
  40.         res = s.find_median(array, threashold). 留学申请论坛-一亩三分地
  41.         self.assertEqual(res, 5)

  42.     def test5(self):
  43.         s = Solution(). Waral 博客有更多文章,
  44.         array = [1,2,3,4,5,6,7,8,9]
  45.         threashold = 10
  46.         res = s.find_median(array, threashold)
  47.         self.assertEqual(res, 0)
  48.         s2 = Solution2()
  49.         res = s.find_median(array, threashold)
  50.         self.assertEqual(res, 0).留学论坛-一亩-三分地
  51. if __name__ == '__main__':.本文原创自1point3acres论坛
  52.     unittest.main(verbosity=2)
复制代码
回复 支持 反对

使用道具 举报

RichardCen 发表于 2015-11-8 12:56:28 | 显示全部楼层
请问是假设threshold在array中吗?就是说会不会有下面这种情况:
array = [1, 2, 3, 4, 6, 7, 8, 9]
threashold = 5
回复 支持 反对

使用道具 举报

sevensevens 发表于 2015-11-21 18:00:40 | 显示全部楼层
RichardCen 发表于 2015-11-8 12:56
请问是假设threshold在array中吗?就是说会不会有下面这种情况:
. 牛人云集,一亩三分地array = [1, 2, 3, 4, 6, 7, 8, 9]
thre ...
. 留学申请论坛-一亩三分地
无所谓啊 大于也符合啊
回复 支持 反对

使用道具 举报

dou.bupt 发表于 2016-4-21 21:09:31 | 显示全部楼层
我刚面的,也是这个题目
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

一亩三分地推荐上一条 /5 下一条

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

custom counter

GMT+8, 2018-5-23 17:22

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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