Re: [心得] Wearisma 面试心得

楼主: pttworld (批踢踢世界)   2018-03-03 17:59:56
※ 引述《gocreating (小平)》之铭言:
: 标题: [心得] Wearisma 面试心得
: 时间: Sat Mar 3 16:37:21 2018
:
: 网页好读版:https://goo.gl/ZegAep
:
: Technical Task
:
: 题目长这样:
:
: Given a string with left and right parentheses, how you verify the string is
: valid (balanced)
: Ex. ((())()()()) -> Valid, ()) → Invalid
这个问题仅需一个整数变量出值为0,定义遇到(整数+1,遇到)整数-1,
O(n)扫一遍,在扫的过程中整数为负即为Invalid,最后结果整数不为0即为Invalid
special case是空字串,默认整数为0为Valid,但是要看题目定义,
有些题目可能认为空字串是Invalid,这个case视情况客制。
:
:
: 第二阶段面试
:
: 第二阶段是纯粹的Coding Test,面试官开了一个共同编辑的google docs给我,上面已经
: 列好题目如下:
:
: Given an array A, write a function to move all 0's to the end of it while
: maintaining the relative order of the non-zero elements. For example, A = [0,
: 1, 0, 3, 12], after calling your function, A should be [1, 3, 12, 0, 0].
:
: 乍看下会觉得很简单,开新的阵列来存不就好了,但是往下一看附带了2项限制:
:
: Note:
: You must do this in-place without making a copy of the array.
: Minimize the total number of operations.
这个问题仅需使用二个整数变量扫一次O(n)解决。
二个变量都是当作index,一个负责遇到0,一个负责遇到非0
遇到非0就把值copy到0的index,然后0的index + 1
最后跑完把0的index后面位置全部填0
int zero_i = 0, non_zero_i = 0;
while(non_zero_i < length_of_array) {
if(A[non_zero_i] != 0) {
A[zero_i] = A[non_zero_i];
zero_i += 1;
}
non_zero_i += 1;
}
while(zero_i < length_of_array) {
A[zero_i] = 0;
zero_i += 1;
}
学生时期练ACM到800题AC打住,结果工作写组语,转行IT也没考过这类白板。
解题这真的要视行业是否有需要才练,能把心态调整成兴趣是最好了。
作者: lNishan (紫小霓)   2018-03-03 18:06:00
)(连这种错都抓不出来还好意思在前面砲人 ~_~这样是对的了 第一题这样做是最佳解
作者: drajan (EasoN)   2018-03-03 18:24:00
leetcode上讨论区不都有答案了?
作者: Uzak (情与欲)   2018-03-03 20:08:00
第2题你忘了排序sorry我看错,原原po例子刚好有排序我以为要排序没有仔细看他的题目
作者: elements (Helianthus annuns)   2018-03-03 20:46:00
作者: dnabossking (少狂)   2018-03-03 22:48:00
记得我在code war解过一样的题目
作者: a110605 (安迪Lee)   2018-03-04 10:48:00
推,这样的思绪解题变得很简单
作者: steven11329 (清新柳橙)   2018-03-05 07:59:00
第一题是遇到"("一定要有")" 配对吧,)( 是invalid
作者: cateran (云川闲步)   2018-03-05 08:26:00
第二题有c++一行解fill(remove(nums.begin(),nums.end(),0),nums.end(),0)
作者: sorryla (Mr.东)   2018-03-06 09:41:00
一行解也只是把很多function塞在一行而已,还不是要解释每个function在做什么给面试官听

Links booklink

Contact Us: admin [ a t ] ucptt.com