回复: 11
跳转到指定楼层
上一主题 下一主题
收起左侧

Pocket Gem我已被坑,贴出面经答案(完整代码)

全局:

2015(7-9月) 码农类General 硕士 全职@ - 网上海投 - 技术电面  | | Fail | 应届毕业生

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
Pocket gem店面被坑
楼主昨晚面的pocket gem二面,今天中午就收到拒信,真心感觉被坑出翔。这个公司题全部是面经上的题,100年都不带换的,不知道他们公司的技术部门到底在想些什么?
楼组店面一面很顺利,二面就坑爹了,楼主面之前也看了一下面经,大致心里有个数。面试官是个说话快的不行,我都听不清楚。
第一题是sort color的变种
这题的精髓不是应该在one-pass就解决,O(1)的复杂度么?好吧,这哥们给了我一个类(他当时还没有给出object的中的结构,我就根本不知道不可以change object中char c的值,你要是让我设计类你就直说啊)。下面的类结构是我自己写的(data纯属打酱油,char代表颜色)但这样onepass就不能实现,也根本不是count sort了,完全就只能用swap来解,楼主给出的答案, 要求sort的顺序r, g, b
class PocketColor {
     int data
     char c;
     PocketColor() {
     }
     PocketColor(int data, char c) {
           this.data = data;
           this.c = c;
     }
}

public class Solution {
      public void sort(PocketColor[] colors) {
             if(colors.length == 0 || colors == null) return;
             int j = 0;
             while(colors[j].c == 'r') j++;
             for(int i = j + 1; i < colors.length; i++) {
                 if(colors[i].c == 'r') {
                        exch(colors, i, j);
                        while(colors[j].c == 'r') j++;
                 }
             }
             while(colors[j].c == 'g') j++;
             for(int i = j + 1; i < colors.length && i > j; i++) {
                if(colors[i].c == 'g') {
                        exch(colors, i, j);
                        while(colors[j].c == 'g') j++;
                }
             }
      }
      private void exch(PocketColor[] colors, int i, int j) {
              PocketColor temp = new PocketColor();
              temp
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
new Stack<TreeNode>();
                while(i < N) {
                        if(i < N && s.charAt(i) == '?') {
                                TreeNode p = getNode(map, i - 1);
                                if(i - 2 > -1 && !stack.isEmpty() && s.charAt(i - 2) != ':') {
                                        stack.peek().left = p;
                                }
                                stack.push(p);
                                i += 2;
                        }
                        else {
                                TreeNode top = stack.pop();
                                TreeNode right = getNode(map, i + 1);
                                top.right = right;
                                if(i - 2 > -1 && s.charAt(i - 2) != ':') {
                                        TreeNode left = getNode(map, i - 1);
                                        top.left = left;
                                }
                                i += 2;
                        }
                }
                return map.get(0);
        }

        private TreeNode getNode(Map<Integer, TreeNode> map, int k) {
                // TODO Auto-generated method stub
                return map.get(k);
        }

        public static void main(String[] args) {
                // TODO Auto-generated method stub
                Solution s = new Solution();
                s.convert("a?b?d?f:g?h:i:e:c?j?k:l:m");
        }

}


评分

参与人数 2大米 +33 收起 理由
Howie + 30 感谢分享!
rengokantai + 3 n/a

查看全部评分


上一篇:Cerner Onsite 面经
下一篇:google电面 9/2 顺便求助一下onsite的时间安排问题
推荐
xiaoyucool 2015-9-22 23:42:35 | 只看该作者
全局:
swap one pass也可以解决啊。。。
回复

使用道具 举报

推荐
newgod2500 2017-6-29 11:04:40 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

推荐
mkcing 2015-9-22 08:13:33 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

🔗
hulahu 2015-9-5 03:21:52 | 只看该作者
全局:
拍拍, 楼主。 move on。 有时, 和面试官气场不和。 这事常有。
回复

使用道具 举报

🔗
rainny 2015-9-5 03:53:20 | 只看该作者
全局:
楼主,我也做了那个跟你一样的sort color,也是只能用swap做,不过我没楼主厉害,折腾了好久,没时间再来一题,直接挂了。。。感觉面试官是故意要坑你的,patpat,继续加油
回复

使用道具 举报

🔗
slayer 2015-9-5 05:02:07 | 只看该作者
全局:
请问对时间空间复杂度有要求吗?
回复

使用道具 举报

🔗
lichenga2404 2015-9-7 06:19:37 | 只看该作者
全局:
感觉这个公司面试, 碰上什么样 的面试官 很有影响。 多谢分享。 lz提到过的题, 之前电面都遇到
回复

使用道具 举报

🔗
swx1031 2015-9-22 07:52:15 | 只看该作者
全局:
我一面刚刚跪了。。。都是老题,全答出来了。。结果还是给跪了。。非常不理解。。
回复

使用道具 举报

🔗
mkcing 2015-9-22 08:06:06 | 只看该作者
全局:
test case, 有时会让写JUNIT test case 吗?
回复

使用道具 举报

🔗
面假空虚 2015-10-24 04:38:09 | 只看该作者
全局:
1. sort colors用swap不影响一遍通过的啊。 2. main function那里print的地方建议用循环来写。。。 3. next largest那个题没有parent指针的情况下,建立路径利用binary search tree特性只要O(lgN) 就可以建好了,不用DFS的。 多谢楼主分享啦,我也是这期求职,祝大家都找到心仪工作~~~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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