爱奇艺电话面试总结

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-22 17:47
第二题我也遇到过。
点赞 回复 分享
发布于 2017-02-22 23:35
第一题桶排可行吗
点赞 回复 分享
发布于 2017-02-23 08:14
其他东西还问了什么呢?
点赞 回复 分享
发布于 2017-02-23 08:29

相关推荐

头像
昨天 14:28
长沙理工大学
刷算法真的是提升代码能力最快的方法吗?&nbsp;刷算法真的是提升代码能力最快的方法吗?
牛牛不会牛泪:看你想提升什么,代码能力太宽泛了,是想提升算法能力还是工程能力? 工程能力做项目找实习,算法也分数据结构算法题和深度学习之类算法
点赞 评论 收藏
分享
11-14 16:13
已编辑
重庆科技大学 测试工程师
Amazarashi66:不进帖子我都知道🐮❤️网什么含金量
点赞 评论 收藏
分享
一个菜鸡罢了:哥们,感觉你的简历还是有点问题的,我提几点建议,看看能不能提供一点帮助 1. ”新余学院“别加粗,课程不清楚是否有必要写,感觉版面不如拿来写一下做过的事情,教育经历是你的弱势就尽量少写 2. “干部及社团经历”和“自我评价”删掉 3. 论文后面的“录用”和“小修”啥的都删掉,默认全录用,问了再说,反正小修毕业前肯定能发出来 4. 工作经验和研究成果没有体现你的个人贡献,着重包装一下个人贡献
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务