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

g 最新7月电面

全局:

2014(7-9月) 码农类General 本科 全职@google - 网上海投 - 在线笔试  | | Other |

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

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

x
g 电面

把一个list的字符串  编
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
了,但时间不够下一题。额

评分

参与人数 2大米 +4 收起 理由
dearsheep + 3 欢迎来介绍你知道的情况
arthur1026 + 1 很有用的信息!

查看全部评分


上一篇:g家电面
下一篇:Yelp onsite 面经

本帖被以下淘专辑推荐:

推荐
msg7086 2014-7-30 07:23:13 | 只看该作者
全局:
字符串编码的话有现成的方案。
BitTorrent规范里用到的BEncoding就是,字符串长度+冒号+字符串。
直接照着BEncoding的规范做List<String>序列化和反序列化就行了。
回复

使用道具 举报

推荐
Interviwer 2014-9-17 00:26:35 | 只看该作者
全局:
用 c++ 写了一个, 不是特别简练, 希望指正
  1. #include<iostream>
  2. #include<string>
  3. #include<vector>
  4. using namespace std;

  5. class bitTorrent {

  6. public:
  7.     vector<string> words;
  8.     string benCoding;

  9.     bitTorrent(vector<string> w) {
  10.         words = w;
  11.         benCoding = "";
  12.     }

  13.     void encoding() {
  14.         for(int i = 0; i < words.size(); i ++) {
  15.             benCoding += num2string(words[i].size()) + ":" + words[i];
  16.         }
  17.     }

  18.     vector<string> decoding() {
  19.         vector<string> rst;
  20.         int i = 0;
  21.         while( i < benCoding.size() ) {
  22.             int len = 0;
  23.             while(benCoding[i] >= '0' && benCoding[i] <= '9') {
  24.                 len = 10 * len + ( benCoding[i] - '0' );
  25.                 i ++;
  26.             }
  27.             if(benCoding[i] == ':') {
  28.                 i ++;
  29.                 string oneWord = "";
  30.                 for(int l = i; l < len+i; l ++) {
  31.                     oneWord += benCoding[l];
  32.                 }
  33.                 i += len;
  34.                 rst.push_back(oneWord);
  35.             }else {
  36.                 cout << "Error" << endl;
  37.                 exit(0);
  38.             }
  39.         }
  40.         return rst;
  41.     }
  42.    
  43.     string num2string(int num) {
  44.         string rst = "";
  45.         int base = 1;
  46.         int tmp = num;
  47.         while(tmp != 0) {
  48.             base *= 10;
  49.             tmp /= 10;
  50.         }
  51.         while(base != 1) {
  52.             rst += (num % base + '0');
  53.             base /= 10;
  54.         }
  55.         return rst;
  56.     }

  57. };


  58. int main() {

  59.     vector<string> t;
  60.     t.push_back("hello");
  61.     t.push_back("test");
  62.     t.push_back("10:10");
  63.     t.push_back(":");
  64.     t.push_back("10");


  65.     bitTorrent* test = new bitTorrent(t);
  66.     test->encoding();

  67.     cout << test->benCoding << endl;
  68.    
  69.     vector<string> out = test->decoding();   
  70.     for(int i = 0 ; i < out.size(); i ++) {
  71.         cout << out[i] << endl;
  72.     }

  73. }
复制代码
回复

使用道具 举报

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

使用道具 举报

🔗
花农 2014-7-19 08:52:32 | 只看该作者
全局:
跟我遇到的题目完全一样,我三月份面的,听口音是白人小哥。当时我自己做出来,但也是花了很多时间,也是没时间做第二题。
回复

使用道具 举报

🔗
readman 2014-7-19 09:13:06 | 只看该作者
本楼:
全局:
给个例子?
回复

使用道具 举报

🔗
notbad 2014-7-19 09:51:38 | 只看该作者
全局:
可以chunk编码吗? |size1|string1|size2|string2|....
回复

使用道具 举报

🔗
nathanwong 2014-7-20 02:54:56 | 只看该作者
全局:
LZ 请问list的是怎么样的呀 那个list的串是啥格式呢? 能否给个详细点的描述。想做一下这个题目
回复

使用道具 举报

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

使用道具 举报

🔗
lvluolan 2014-7-20 14:38:44 | 只看该作者
全局:
jfwwlong 发表于 2014-7-20 10:55
我找了一下,看到一个不错的答案。就是先将每个单词里面的反斜杠'\'加倍变成连续2个'\',然后将每个每个单 ...

这个方法确实不错,暂时还没找出bug,谢谢^_^
回复

使用道具 举报

🔗
joy9088 2014-7-26 04:22:42 | 只看该作者
全局:
也就是说用"\"作为转义字符
回复

使用道具 举报

🔗
 楼主| zhaogongzuo 2014-7-30 05:57:16 | 只看该作者
全局:
花农 发表于 2014-7-19 08:52
跟我遇到的题目完全一样,我三月份面的,听口音是白人小哥。当时我自己做出来,但也是花了很多时间,也是没 ...

g让我再phone screen一次
回复

使用道具 举报

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

本版积分规则

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