一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投,内推你去多家公司面试
Airbnb 数据科学职位
in analytics and inference
天天打游戏、照样领工资,
你要不要来?
把贵司招聘信息放这里
查看: 456|回复: 3
收起左侧

Cousera OA 2题 (90分钟)06/29/17

[复制链接] |试试Instant~ |关注本帖
wcz199165 发表于 2017-6-30 08:15:26 | 显示全部楼层 |阅读模式

2017(7-9月) 码农类 硕士 全职@cousera - 网上海投 - 在线笔试 |Failfresh grad应届毕业生

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

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

x
大概6.20左右海投的一个cousera的职位,拿了OA,今天下午做的,一共2题,90分钟完成。
楼主第一题过了,第二题一开始想叉了,最后没做完,应该是挂了。
第一题忘记截图了,描述如下:
其实和leetcode的subset2差不多,只不过输入数据是一个字符串,例如:“apple,apple,banana,orange”(每个字符串之间都有一个逗号隔开);让你返回所有不重复的组合,放在字符串数组里
例如返回:
{
"apple"
"apple,apple"
"apple,apple,banana". 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
"apple,apple,banana,orange"
"apple,apple,orange"
"apple,banana"
"apple,orange"
"banana"
"banana,orange"
"orange". 1point3acres.com/bbs
}
顺序无所谓。

楼主用java做的,比较简单。和subset2DFS的思想差不多,只要处理一下字符串的存储就行了,我是放在一个list里,排了序,结果也是用list存,最后再放回字符串数组里。
. Waral 鍗氬鏈夋洿澶氭枃绔,
第二题下一层楼发



补充内容 (2017-6-30 08:35):
刚才查了下楼主6.18投的一个叫Software Engineer, Data Infrastructure的职位,20号收的OA。不是new graduate的职位。但楼主自己其实是new gradate,也不知道为什么会给OA````Anyway,反正都挂了
 楼主| wcz199165 发表于 2017-6-30 08:27:13 | 显示全部楼层
第二题:sorting nested dictionary
我本来截图了的···,可是发现发图好麻烦啊···,就不发图了,我把题意说一下:
给一个字符串,字符串里面的每一个元素都是一个键值对,有key和value,例如 a:apple 或者c:change 值可以嵌套:例如 b:{cb:cranbery,bb:bluberry,bd:{}},嵌套的大括号里面可以为空。
要求按照key将所有的键值对排序,再返回一个新的String;
例如输入字符串:{b:{cb:cranberyy,bb:blueberry},a:apple,c:cherry}
返回字符串:{a:apple,b:{bb:blueberry,cb:cranbery},c:cherry}
即先把内层的{}按key排好序,再以此把外层排序。题目保证输入数据是合法的,开始和结束字符一定是'{' 和 '}'

楼主自己也比较水,拿到这个题刚开始一脸懵逼,感觉应该是递归,后来写了半天也写不对,最后想用着用正常的循环遍历做,后来来不及了。下来之后在codepad上接着写完了,试跑了两组数据没问题,不过不知道最后能不能过,只能作参考:. 1point 3acres 璁哄潧
  1. class Solution {
  2.   public static void main(String[] args) {. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  3.     String input = "{b:{cb:{cbz:cbzkk,cba:{cbad:cranberry,cbac{}}},bb:blueberry},a:apple,c:cherry}";
  4.     sort_entries(input);
  5.   }
  6.   /*
  7. * Complete the function below.
  8. */

  9.     static void sort_entries(String input) {
  10.         char[] arr = input.toCharArray();
  11.         int len = arr.length;. 1point 3acres 璁哄潧
  12.         Stack<Integer> stack = new Stack<>();-google 1point3acres
  13.         for (int i = 0; i < len; i++) {
  14.            if (arr[i] == '{') {
  15.                stack.push(i);
  16.            } else if (arr[i] == '}') {
  17.                 sort(arr, stack.pop() + 1, i - 1);
  18.            }           
  19.         }
  20.       //return arr.toString();
  21.        System.out.println( String.valueOf(arr));

  22.     }
  23.     public static void sort (char[] arr, int start, int end) {. Waral 鍗氬鏈夋洿澶氭枃绔,

  24.         if (start >= end) {
  25.           return ;
  26.         }         
  27.         List<String> temp = new ArrayList<>();
  28.         StringBuilder builder = new StringBuilder();
  29.         Stack<Integer> stack = new Stack<>();

  30.         for (int i = start; i <= end; i++) {

  31.            if (arr[i] == '{') {
  32.                stack.push(i);
  33.            }. from: 1point3acres.com/bbs
  34.            if (arr[i] == '}') {
  35.                stack.pop();
  36.            }
  37.            if (arr[i] == ',' && stack.isEmpty()){
  38.               temp.add(builder.toString());
  39.               builder = new StringBuilder();
  40.               continue;
  41.            }
  42.             builder.append(arr[i]);
  43.         }
  44.         temp.add(builder.toString());
  45.         Collections.sort(temp);
  46.         int index = start;
  47.         for(int i = 0; i < temp.size(); i++) {. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  48.             for(int j = 0; j < temp.get(i).length(); j++) {
  49.                 arr[index++] = temp.get(i).charAt(j);
  50.             }
  51.             if(i != temp.size() - 1) {
  52.               arr[index++] = ',';
  53.             }           . visit 1point3acres.com for more.
  54.         }   

  55.     }
复制代码




回复 支持 反对

使用道具 举报

lcq123 发表于 2017-6-30 08:30:02 | 显示全部楼层
请问楼主是投的是new grad 吗?
我在Coursera官网上貌似没发现new grads的职位呀?  
回复 支持 反对

使用道具 举报

 楼主| wcz199165 发表于 2017-6-30 08:35:38 | 显示全部楼层
lcq123 发表于 2017-6-30 08:30.1point3acres缃
请问楼主是投的是new grad 吗?
我在Coursera官网上貌似没发现new grads的职位呀?

楼主投的是Software Engineer, Data Infrastructure的职位
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-12-12 07:01

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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