找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 6173|回复: 9
收起左侧

[ServiceNow] ServiceNow第一轮(电面)

[复制链接]

23

主题

13

精华

507

积分

超级会员

Rank: 4

积分
507
发表于 10-24-2015 01:34 AM | 显示全部楼层 |阅读模式

亲!马上注册或者登录会查看更多内容!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
由于在local 所有就是直接去office面的,整个过程大概一个小时,公司西雅图的office在south lake旁边,看着感觉还不错,挺高大上的感觉
; r& c, u  c9 F& a首先谈了下工作中做的project
# X( \/ O& H3 c3 @8 H! I
. M1 S! K) S6 f7 {第一道题:
4 T. }$ D1 Q! H; O8 H0 ]
0 Y( Z9 \) Z+ _( _$ l! e) }- g& tLC 原题, T2 |: O9 ?8 _8 G, o5 }+ @

Given a binary tree

    struct TreeLinkNode {      TreeLinkNode *left;      TreeLinkNode *right;      TreeLinkNode *next;    }' Y# n: u! W$ `

Populate each next pointer to point to its next right node. If there is no next right node, the next pointer should be set to NULL.

Initially, all next pointers are set to NULL.

Note:

  • You may only use constant extra space.
    3 L7 O  n/ D7 k8 [" ^
直接用nextHead nextPrev 两个指针,每次遍历树的时候连接下一层的节点就可以了2 B: s7 w, n- M; s6 c% O6 @9 |# B

& a4 I) i! O! y; e

! L/ X5 y- [% E" D1 [) [2. 一个int[] 找出一个点比所有左边的点都大,比右边的点都大' q9 k. a& Y) z. T0 O' _0 e
比如 [1,2,3,10,8,2,1]  返回10就行
& {- s2 {# s, v/ U! Y, M& j! Znaive做法是 对每个元素扫左右所有的点,时间复杂度 O(n^2)$ ?: q" l5 l( A- B% U
更好的做法是从左边扫array 记下当前最大值, 再从右边开始扫array 记下当前最大值
9 Y6 c1 Z& x  M如上面的例子 记下 left[] = [1,2,3,10,10,10,10,10] ,right[] = [10,10,10,10,8,2,1]
3 o0 j1 q2 I: ~6 _" J. q4 B( H对每个点就直接可以判断了 复杂度 O(n)
* X" T2 G1 z- i. g1 m  u
0 q9 ?+ ^5 |( }$ m# ], x% v! [整体感觉不是很难
( s4 k# I# c! W

评分

参与人数 1金钱 +6 收起 理由
Sophia + 6 好帖!大米满满送上!

查看全部评分

781

主题

575

精华

5670

积分

顶级版主

Rank: 9Rank: 9Rank: 9

积分
5670

活跃会员热心会员优秀版主

发表于 10-24-2015 01:56 AM | 显示全部楼层
感谢您的面经分享~~~祝您面试工作学习顺利~~~大米积分满满送上~~~
我们始终相信IT会持续改造甚至创新传统行业,我们始终全面看好咱们的CS专业!

50

主题

1

精华

303

积分

高级会员

Rank: 3Rank: 3

积分
303
发表于 10-24-2015 11:34 AM | 显示全部楼层
请问内推了么?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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