同学XX面试的一条简单面试题
2008-10-27 21:37
211 查看
不定义任何变量, 求字符串长度
这是我的实现. 并写了一个定义变量的.各执行N次, 输出结果是, 没有定义变量的比定义变量的快....
nt strlen(char* str)
{
if (*(str) != '/0')
return strlen(++str) + 1;
else
return 0;
}
int strlen2(char* str)
{
int i = 0;
while (*(str++) != '/0')
i++;
return i;
}
int _tmain(int argc, _TCHAR* argv[])
{
int start = GetTickCount();
char* a = "aksjdlaaaccC";
for (int i = 0; i < 10000000; i+=1)
{
strlen(a);
}
int end = GetTickCount();
cout<<end - start<<endl;
start = GetTickCount();
for (int i = 0; i < 10000000; i+=1)
{
strlen2(a);
}
end = GetTickCount();
cout<<end - start<<endl;
return 0;
}
结果输出:
4527
1091
我试着把strlen2改成
int strlen2(char* str)
{
int i = 0;
while (*(str++) != '/0')
i++;
return i;
}
4506
1062
本以为改了以后, 结果会有所改变, 因为我是操作指针而不是传入索引值. 原本我以为传入索引值会比操作指针慢, 但看来错了.
难道是i++??
这是我的实现. 并写了一个定义变量的.各执行N次, 输出结果是, 没有定义变量的比定义变量的快....
nt strlen(char* str)
{
if (*(str) != '/0')
return strlen(++str) + 1;
else
return 0;
}
int strlen2(char* str)
{
int i = 0;
while (*(str++) != '/0')
i++;
return i;
}
int _tmain(int argc, _TCHAR* argv[])
{
int start = GetTickCount();
char* a = "aksjdlaaaccC";
for (int i = 0; i < 10000000; i+=1)
{
strlen(a);
}
int end = GetTickCount();
cout<<end - start<<endl;
start = GetTickCount();
for (int i = 0; i < 10000000; i+=1)
{
strlen2(a);
}
end = GetTickCount();
cout<<end - start<<endl;
return 0;
}
结果输出:
4527
1091
我试着把strlen2改成
int strlen2(char* str)
{
int i = 0;
while (*(str++) != '/0')
i++;
return i;
}
4506
1062
本以为改了以后, 结果会有所改变, 因为我是操作指针而不是传入索引值. 原本我以为传入索引值会比操作指针慢, 但看来错了.
难道是i++??
相关文章推荐
- 百度Android面试题(我有同学前一阵子去百度面试过,确实是百度的android工程师职位的面试题)
- 数据库面试题---SQL中遇到多条相同内容只取一条的最简单实现
- 北邮某同学面试网易有道研发实习生的面试题
- iOS面试-iOS最新面试题之Get 和Post请求的区别,(看似简单,但坑很深)
- 今天面试笔试了一道SQL面试题,狠简单
- 【C面试】一道简单的C语言面试题的思考——打印星阵
- 一些简单的lua面试题,小算法,算不上算法的算法。。╮(╯▽╰)╭博主面试的辛酸旅程
- 面试了几家公司,简单面试题,对于我新手第一次朦了!
- 一道简单的百度面试题遇到的问题
- 面积最大的全1子矩阵(腾讯2012年暑期实习生招聘面试二面试题)
- 机器学习&数据挖掘笔记(常见面试之机器学习算法思想简单梳理)
- 大公司面试面试题总结
- 面试干货!21个必知数据科学面试题和答案part2(12-21)
- 面试宝典:(C语言面试题)总汇
- 前端同学大福利,最全的面试题目整理
- net面试题大全(有答案) & asp.net面试集合
- 整理的一系列面试经历和面试题
- 面试必备-最简单的排序算法清晰的排序算法总结
- Java面试题之精选最常见的面试真题 上
- 亲历腾讯WEB前端开发三轮面试经历及面试题