2014去哪儿网校园招聘笔试算法题汇总.doc

上传人:雁** 文档编号:17302994 上传时间:2022-05-23 格式:DOC 页数:4 大小:37KB
返回 下载 相关 举报
2014去哪儿网校园招聘笔试算法题汇总.doc_第1页
第1页 / 共4页
2014去哪儿网校园招聘笔试算法题汇总.doc_第2页
第2页 / 共4页
点击查看更多>>
资源描述

《2014去哪儿网校园招聘笔试算法题汇总.doc》由会员分享,可在线阅读,更多相关《2014去哪儿网校园招聘笔试算法题汇总.doc(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、2014去哪儿网校园招聘笔试算法题汇总 1.写一个函数,转换相对路径为绝对路径,比如:/home/abs/./temp/new/./,输出路径为:/home/temp。参考代码:1. /写一个函数,转换相对路径为绝对路径,比如:/home/abs/./temp/new/./,输出路径为:/home/temp。 2. intRP2AP(constchar*pInStr,char*pOutStr)3. 4. if(pInStr=NULL|pOutStr=NULL)return0;5. 6. stringstr=pInStr;7. stringstrTemp;8. vectorvec_str;9.

2、stringstrOut=;10. 11. intnPos1;12. intnPos2;13. 14. nPos1=str.find(/,0);15. if(nPos1nPos1)24. 25. strTemp=str.substr(nPos1,nPos2-nPos1);26. /如果不是/.,就放入vector里 27. if(strTemp!=/.)28. vec_str.push_back(strTemp);29. else/弹出上一个 30. 31. vec_str.reserve(vec_str.size();32. vec_str.pop_back();33. vec_str.re

3、serve(vec_str.size();34. 35. nPos1=nPos2;36. 37. else38. 39. break;40. 41. 42. 43. /循环赋值累加 44. for(inti=0;ivec_str.size();i+)45. 46. strOut+=vec_stri;47. 48. 49. /这里用strOut.c_str(),要安全一些,有的环境不这样写编译都不过。 50. memcpy(pOutStr,strOut.c_str(),strOut.size();51. 52. return1;53. 54. 55. intmain()56. 57. intn=

4、10;58. /chara=/home/abs/./temp/new/./; 59. chara=/home/abs/temp/new/./;60. 61. charb256;62. 63. memset(b,0,256);64. intnRet=RP2AP(a,b);65. 66. if(nRet=1)67. coutbendl;68. 69. system(pause);70. return0;71. /写一个函数,转换相对路径为绝对路径,比如:/home/abs/./temp/new/./,输出路径为:/home/temp。int RP2AP(const char* pInStr, ch

5、ar* pOutStr)if (pInStr=NULL | pOutStr=NULL) return 0;string str = pInStr;string strTemp;vector vec_str;string strOut=;int nPos1;int nPos2;nPos1 = str.find(/, 0);if (nPos1nPos1)strTemp = str.substr(nPos1, nPos2-nPos1);/如果不是/.,就放入vector里if (strTemp!=/.)vec_str.push_back(strTemp);else/弹出上一个vec_str.rese

6、rve(vec_str.size();vec_str.pop_back();vec_str.reserve(vec_str.size();nPos1 = nPos2;elsebreak;/循环赋值累加for (int i=0; ivec_str.size(); i+)strOut +=vec_stri;/这里用strOut.c_str(),要安全一些,有的环境不这样写编译都不过。memcpy(pOutStr, strOut.c_str(), strOut.size();return 1;int main() int n = 10; /char a = /home/abs/./temp/new/

7、./;char a = /home/abs/temp/new/./; char b256;memset(b, 0, 256);int nRet = RP2AP(a, b);if (nRet =1 )cout b endl; system(pause); return 0; 2.一个10*10的矩阵(可以理解为棋盘),随时生成一组数据填入矩阵,任何一个位置的数字除4进行计算,按余数着色,余数为0着色为red,1为blue,2为green,3为black,可以理解为生成4中颜色的棋子放入棋盘,如果存在其中同色五星连珠的情况(规则通五子棋),找出任意一组,输出5个棋子的位置下标值。3.有两个文件co

8、ntext.txt和words.conf,请尝试将他们合并成为一段文字,并打印出来。这两个文件内容如下:context.txt“并不是每个人都需要$(qunar)自己的粮食,$(flight.1)每个人都需要做自己穿的$(flight.2),我们说着别人发明的$(hotel),使用别人发明的数学.我们一直在$(tuan)别人的成果。使用人类的已有经验和知识$(travel.1)来进行,是一件$(travel.2)的事情”word.confflight=也不是:衣服qunar=种植hotel=语言tuan=使用travel=发明创造:很了不起4.一个文件里有10万个随机正整数,按照以下规则能组合

9、出一份新的数据:A如果当前数字能被3整除,那么它和文件中所有数字(包括自己)两两相加后生成一组数字替代自己的位置。B如果不能被3整除,则它只需要乘以二,生成一个数字替代自己的位置。例如:3,7,6会组合出6,10,9,14,9,13,12再如:5,12,9,6,2会组合出10,17,24,21,18,14,14,21,18,15,11,11,18,15,12,8,4写一个程序找出并打印出新数据的最小的前200个数字。请考虑优化算法复杂度。5.已知字母序列【d, g, e, c, f, b, o, a】,请实现一个函数针对输入的一组字符串 input = bed, dog, dear, eye,按照字母顺序排序并打印。本例的输出顺序为:dear, dog, eye, bed。6.有一万个北京单身男女向你提交了基本资料,包括:姓名、性别、年龄、星座,写一段程序尝试找出他们最匹配的一对。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁