推荐:数据科学课程和书籍清单以及培训讲座


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 1338|回复: 2
收起左侧

G电面

[复制链接] |试试Instant~ |关注本帖
bikini1988 发表于 2015-12-22 14:34:19 | 显示全部楼层 |阅读模式

2015(10-12月) 码农类 硕士 全职@Google - Other - 技术电面 |Other在职跳槽

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

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

x
电面, 题都不难。记不太清细节。基本意思如下:. Waral 鍗氬鏈夋洿澶氭枃绔,
1. Given a big of characters, generate all kinds of permutation with length==k.
    e.g: bag: {a:2, b:1}, k=2 -> {aa, ab, ba}. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
    follow up: in the above case: ab and ba are considered as duplicated.
    e.g:  bag: {a:2, b:1}, k=2 -> {aa, ab}


2. Ask me to design sth like "Big Integer" in JAVA..鏈枃鍘熷垱鑷1point3acres璁哄潧
    Finally, turn out to be "String Multiply" in leetcode.
bobzhang2004 发表于 2016-2-2 03:43:26 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
第一题应该就是permutation吧
回复 支持 反对

使用道具 举报

bobzhang2004 发表于 2016-2-2 05:24:47 | 显示全部楼层
关注一亩三分地微博:
Warald
写了下第一题,请问ab和ba相同的意思是amagram代表重复吗?
  1. public class PermutationIII {

  2.         public static List<String> getPermutation(HashMap<Character, Integer> map,
  3.                         int k) {
  4.                 Set<String> res = new HashSet<String>();
  5.                 if (map == null || map.size() == 0) {
  6.                         return new ArrayList<String>();
    . Waral 鍗氬鏈夋洿澶氭枃绔,
  7.                 }
  8.                 helper(res, map, new StringBuilder(), k);
  9.                 return new ArrayList<String>(res);
  10.         }
    . Waral 鍗氬鏈夋洿澶氭枃绔,

  11.         private static void helper(Set<String> res,
  12.                         HashMap<Character, Integer> map, StringBuilder sb, int k) {. 1point 3acres 璁哄潧
  13.                 if (sb.length() == k) {
  14.                         res.add(sb.toString());. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  15.                         return;. more info on 1point3acres.com
  16.                 }. from: 1point3acres.com/bbs
  17.                 HashMap<Character, Integer> tmp = new HashMap<Character, Integer>(map);.鏈枃鍘熷垱鑷1point3acres璁哄潧
  18.                 for (char c : tmp.keySet()) {
  19.                         sb.append(c);
  20.                         map.put(c, map.get(c) - 1);
  21.                         if (map.get(c) == 0) {
  22.                                 map.remove(c);
  23.                         }
  24.                         helper(res, map, sb, k);
  25.                         sb.deleteCharAt(sb.length() - 1);
  26.                         if (!map.containsKey(c)) {
  27.                                 map.put(c, 1);. Waral 鍗氬鏈夋洿澶氭枃绔,
  28.                         } else {
  29.                                 map.put(c, map.get(c) + 1);
  30.                         }-google 1point3acres
  31.                 }
  32.         }.鏈枃鍘熷垱鑷1point3acres璁哄潧

  33.         public static void main(String[] args) {
  34.                 HashMap<Character, Integer> map = new HashMap<Character, Integer>();
  35.                 map.put('a', 2);
  36.                 map.put('b', 1);
  37.                 List<String> res = getPermutation(map, 2);. Waral 鍗氬鏈夋洿澶氭枃绔,
  38.                 for (String s : res) {
  39.                         System.out.println(s);
  40.                 }
  41. . from: 1point3acres.com/bbs
  42.         }
  43. }
复制代码
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-7-29 01:19

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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