转发: 超easy的狗家店面,求人品

面试官应该是ABC,反正口音那些都挺好

一上来介绍了他自己,然后直接上题,在面试官的帮助下最后1分钟做完,bug free :

  给两个字符串a,b,第一个字符串a可能带若干退格字符(''|'' 表示), 问a经过这些退格操作后,最后是否和b一样,要求O(1) space,不能修改a和b

非常简单的题有木有。 和利口 拔思斯 非常类似。唯一的不同是这道题字符串b不包含退格符,其实面试官说都有退格的情况是follow up,但是后来没时间问了。

就这么一道简单的题,楼主一直想去套lc原题的解法,后来发现总是有问题。后来索性自己想了。中间有一些bug,但是面试官非常nice一直给我提示,后来亲自帮我改了两行代码。改完以后说: 恩,这下没问题啦

感觉面试最怕的就是碰到和原题类似但是却改了条件的题,总想着去套原题,其实还不如静下心自己想。大家面试碰到这种情况一定要相信自己,独立思考。

最后1分钟是自己提问,面试官真的超级好,每个问题都很认真的回答,整个QA差不多超时了10分钟。

第一次面狗家,这两周天天从早到晚刷面经,虽然自己很弱,但希望能有好运气!

怎么做啊 是不是倒着来 我记得原题就是这个思路

是的,倒着来,然后统计退格的次数,加1减1这种

我是觉得按照leetcode高票答案的该起来应该可以使用啊。

public boolean backspaceCompare(String S, String T) {
        int i = S.length()-1, j = T.length()-1;
        while(true){
            for(int count = 0; i >= 0 && (count > 0 || S.charAt(i) == ''#'');i--){
                count += S.charAt(i) == ''#''? 1:-1;
            }

            if(i >= 0 && j >= 0 && S.charAt(i) == T.charAt(j)){
                i--;j--;
            }
            else{
                return i == -1 && j == -1;
            }
        }
    }

是可以,但是楼主之前没仔细研究这个答案,所以一边想这个答案的思路一边还要和面试官交流有点慌乱,两头顾不上。

确实是,如果第一次见到这个题要求O(n)的话我估计就凉凉了