360 2015校园招聘
1.写一个函数,根据两个文件的绝对路径算出相对路径。如a = “qihoo/app/a/b/c/d/new.c”,b = “/qihoo/app/1/2/test.c”,那么b相对于a的相对路径是”../../../../1/2/test.c”
//ComputationalRelativePath.cpp
#include <iostream>
#include <cstring>
#include <cassert>
using namespace std;void ComputationalRelativePath(char *str1,char *str2)
{assert(str1 != NULL && str2 != NULL);int i;char *p = NULL,*q = NULL;char temp[128] = {'\0'};for(i = 0; i < strlen(str1); ++i){if(str1[i] != str2[i]){p = str1+i;q = str2+i;break;}}while(str1[i++] != '\0'){if(str1[i] == '/')strcat(temp,"../");}strcat(temp,q);cout<<temp<<endl;
}int main()
{char str1[] = "/qihoo/app/a/b/c/d/new.c";char str2[] = "/qihoo/app/1/2/test.c";ComputationalRelativePath(str1,str2);return 0;
}
2.有一个二维float数组,有m行n列,每一个行和列上都是递减序列,请编程实现在这个矩阵中查找值等于v的元素的函数,如果找到返回其下标。
剑指offer书上第二章的题目,略作修改
#include <math.h>#include <iostream>
using namespace std;int* Find(float matrix[][4], int rows, int columns, int numbers)
{if(matrix!=NULL && rows>0 && columns>0){int *a = new int[2];int row = 0;int column = columns - 1;while(row < rows && column < columns){if( (fabs(matrix[row][column]-numbers))<1e-7 ){a[0] = row;a[1] = column;return a;}else if(matrix[row][column] < numbers)column--;elserow++;}return NULL;}
}int main()
{float a[4][4] = {15,11,8,6,13,10,7,4,12,9,4,2,9,8,2,1};int *b = Find(a,4,4,9);cout<<b[0]<<" "<<b[1]<<endl;delete []b;return 0;
}
3.字符串A和B的最长公共单词
LongestCommon_Substring
最长公共字符串,即经典的KMP算法,KMP算法的实现比较复杂,我这里用了暴力破解的办法,虽然时间复杂度较高,但是容易维护。有兴趣的同学可以去看看这篇文章对于KMP算法的介绍
#include <string.h>#include <iostream>
#include <string>
using namespace std;void LongestCommon_Substring(char *str1,char *str2,char *result)
{if(str1 == NULL || str2 == NULL)return;int maxlength = 0;int curpositin = -1;for(int i = 0; i < strlen(str1); ++i){for(int j = 0; j < strlen(str2); ++j){if(str1[i] == str2[j]){for(int k = 1; str1[i+k]==str2[j+k]&&str1[i+k]!='\0'; ++k){if(k > maxlength){maxlength = k;curpositin = i;}}}}}if(curpositin == -1)return;else{memcpy(result,str1+curpositin,maxlength);result[maxlength] = '\0';}
}int main()
{char result[512] = {'\0'};;LongestCommon_Substring("zhangligou","gligzhangligu",result);cout<<result<<endl;return 0;
}
360 2015校园招聘相关推荐
- 奇虎360 2015校园招聘笔试编程题
题目一: 写一个函数,根据两文件的绝对路径算出相对路径. 如a="/qihoo/app/a/b/c/d/new.c",b="/qihoo/app/1/2/test.c&q ...
- 百度2015校园招聘面试题(成功拿到offer)
百度2015校园招聘面试题(成功拿到offer) 2014/10/15 | 分类: IT职场 | 1 条评论 | 标签: 技术面试, 百度 分享到:45 本文作者: 伯乐在线 - 敏敏 .未经许可,禁 ...
- 多益网络2015校园招聘第二次笔试题
多益网络2015校园招聘第二次笔试题 LZ本人大三码农一枚,今天去参加多益网络的校园招聘2笔题,发现自己的c/c++知识还需要认真啊.话不多说上题,本次总共是5道选择题,第一题读代码题就不多说了,第二 ...
- 百度2015校园招聘笔试题
百度2015校园招聘笔试题(自己凭记忆第一时间,记录了这么多,有些描述比较简单,请大神们补充) 一 .简答题(30分) 1. 进程和线程的联系与区别. 2. 简述数据库的存储过程及其优点. 3. st ...
- 360 2013校园招聘笔试题(含参考答案)
360 2013校园招聘笔试题(含参考答案) 参考答案: 1.D 5*5*5=125 2.C 排除法 3.A 仅个人意见 4.A 5.D ABC三语句一定保留,D不确定,EF一定删除 6.不 ...
- 阿里巴巴2015校园招聘面试经历(笔者面试问题----倾情奉献)
8.29号笔试,9.1号官网显示笔试通过请预约面试时间,预约了9.17号下午三点面试. 投入更加紧张的准备中,先把项目中的各种可能被问到的细节问题想到,然后再总结自己当时的解决办法和思路.最后,把各种 ...
- 腾讯2015校园招聘
本帖最后由 itmian4 于 2014-9-14 10:30 编辑 腾讯2015校园招聘 笔试城市:西安.成都.武汉等 笔试时间:2015-9-13 腾讯校园, 西安 分享到: QQ空间 腾讯微博 ...
- 互联网行业2015校园招聘
互联网行业2015校园招聘 本文档由大街网收集整理了互联网几大知名互联网企业2015年最新招聘笔试面试题资料,包括百度,腾讯,阿里巴巴,谷歌,新浪,京东,搜狐等多家知名企业... 详细解读 和小伙伴们 ...
- 同花顺2015校园招聘笔试题
1280社区:http://www.dy1280.com/thread-498-1-1.html 同花顺2015校园招聘笔试题 日期:2014-9-15 地点:哈尔滨工程大学
最新文章
- Rest 微服务工程搭建02——微服务消费者订单Module模块 || @RequestBody 的重要作用
- Python 阅读书目推荐
- python菜鸟教程shell_[python小白]菜鸟教程---
- w7 全网架构-rsync-备份
- java基础--集合案例斗地主发牌排序
- C# 对Ini文件操作(C# ini文件操作类)
- 离群点、异常点检测及Python实现(正态分布3∂,Z-score 异常值检测,基于MAD的Z-score 异常值检测,杠杆值点、DFFITS值、SR学生化残差、cook距离和covratio值)
- centos图形界面,vncserver
- shell脚本执行冲突事件-sshwhile
- 中断按键c语言程序设计,C语言程序设计:INT0及INT1中断计数
- 数学知识——博弈论(巴什博奕、尼姆博奕、威佐夫博奕)思路及例题
- 组合逻辑与时序逻辑的区别
- cass等距离等分线段的命令键_cad等分快捷键(cad等分线段快捷键命令)
- Proface触摸屏与三菱PLC软件仿真(或连接实体PLC)
- QRJDC搭建实现QQ扫码登录对接青龙对接傻妞
- 华为AC+AP上线配置
- 高位在前低位在后是啥意思_深度被套后应该如何补仓?终于有人把它讲明白了,精髓都在这里,学会了被套将与你永远无缘...
- Lua脚本快速上手(附示例程序代码)
- Visual C++ 6.0 完整版------win10可用
- 分享一个C#操作Word完整源码