【通知】7月22,工业界资深数据科学家教你破解各大公司面试!


一亩三分地论坛

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

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

Riverbed 电话 面经

[复制链接] |试试Instant~ |关注本帖
xiaohl0913 发表于 2016-3-8 11:45:03 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类 博士 全职@Riverbed - 网上海投 - 技术电面 |Pass在职跳槽

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

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

x
有个数组, 数组满足几个条件
1. 数组的每个元素是有效的或者是无效的. from: 1point3acres.com/bbs
2. 数组的每个有效的元素都有个指针指向数组的另外的一个有效的元素形成一个链表
3. 第一个元素永远是有效的
4. 最后一个有效的元素永远指向一个无效的元素

.鐣欏璁哄潧-涓浜-涓夊垎鍦
struct node {
    bool is_valid; . from: 1point3acres.com/bbs
    int next_idx; 指向下一个有效的元素
};

.1point3acres缃

比如 (有 = 有效的, 无 = 无效的):
0 -> 2 -> 4 -> 6 -> 7:

0  | 1  |  2  | 3  |  4  | 5  |  6 |  7
有| 无 | 有 | 无 | 有 | 无 | 有 | 无


但是有一些 links 被 corrupted 了  (就是说从有效的变成无效的了), 比如 4 号:
0  | 1  |  2  | 3  |  4  | 5  |  6 |  7
有| 无 | 有 | 无 | 无 | 无 | 有 | 无


                           ^
.鏈枃鍘熷垱鑷1point3acres璁哄潧
你的任务是修复这些坏的链接, 让他们指向下一个有效的元素. 最终变为有效的链表:

A[4].is_valid = true;
A[4].next_idx = 6;

0  | 1  |  2  | 3  |  4  | 5  |  6 |  7
有| 无 | 有 | 无 | 有 | 无 | 有 | 无


试着改变尽可能少的元素。并且不能改变原来是有效的元素.鏈枃鍘熷垱鑷1point3acres璁哄潧

void repair_links(vector<node> &A);
. more info on 1point3acres.com

评分

1

查看全部评分

梳子爱安可 发表于 2016-5-18 02:15:59 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
请问楼主是海投还是内推呀?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-7-21 02:51

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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