爱奇艺电话面试总结

1 struct ST
{
int data;
......
};
void sort_st(vector<ST>& st_arr)
{
......
}
ST结构体的data成员只有0,1,2三种取值,输入st_arr数组中data是乱序的,要求算法使完成排序,要求时间复杂度O(n),空间复杂度O(1)
如原数组[0,1,2,1,0,2,2,1,1]
-->[0,0,2,2,2,1,1,1,1]
思路1:
(1)设置两变量,i用来指向已确定位置,j用来遍历
(2)遍历第一遍将0放到应该位置,再遍历一遍将2放到应该位置
//遍历第一遍
[0,1,2,1,0,2,2,1,1]        //交换
i        j
[0,0,2,1,1,2,2,1,1]
i         j
//遍历第二遍
[0,0,2,1,1,2,2,1,1]        //交换
i     j
[0,0,2,2,1,1,2,1,1]
i     j
......
思路2:
思路1需要遍历2遍,面试官说可遍历1遍
参考#2GungnirLaevatain

2 百G文件,找出出现次数前十的字符串(海量数据处理)
http://blog.csdn.net/fycy2010/article/details/46945641

再没啥说的了,静下心,多刷刷牛客题吧!
全部评论
感觉是不是可以三个指针i,j,k。i确定头,j进行遍历,k确定尾,遍历中,将j指向的0和i指向的头进行交换,j指向的2和k指向的尾进行交换,当j和k指向同一个时结束,这样一遍遍历就可以了吧
点赞 回复 分享
发布于 2017-02-22 19:02
其他东西还问了什么呢?
点赞 回复 分享
发布于 2017-02-23 08:29
第一题桶排可行吗
点赞 回复 分享
发布于 2017-02-23 08:14
第二题我也遇到过。
点赞 回复 分享
发布于 2017-02-22 23:35
实习还是校招。
点赞 回复 分享
发布于 2017-02-22 17:47

相关推荐

06-15 02:05
已编辑
南昌航空大学 数据分析师
Eason三木:你如果想干技术岗,那几个发公众号合唱比赛的经历就去掉,优秀团员去掉,求职没用。然后CET4这种不是奖项,是技能,放到下面的专业技能里或者单独列一个英语能力。 另外好好改改你的排版,首行缩进完全没有必要,行间距好好调调,别让字和标题背景黏在一起,你下面说能做高质量PPT你得展现出来啊,你这简历排版我用PPT做的都能比你做的好。 然后自我评价,你如果要干数据工程师,抗压能力强最起码得有吧。
简历中的项目经历要怎么写
点赞 评论 收藏
分享
牛客刘北:如果暑期实习是27届的话,你要晚一年才会毕业,企业为什么会等你呢?要搞清时间逻辑呀!27届现在实习只能是在暑假实习,这是日常实习,不是暑期实习。所以多去投日常实习吧,暑期实习肯定不会要你的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务