当前位置: 技术问答>linux和unix
H3C面试问题
来源: 互联网 发布时间:2017-03-22
本文导语: 本帖最后由 horstlinux 于 2012-11-08 21:48:58 编辑 昨天接到H3C HR的面试邀请,本来不想去的, 和自己的方向不是太一致,看了看面试通知, 就在我家旁边, 那就试试白。 9:00去面试, 去到了,一层站了好多人(还要领零时卡...
昨天接到H3C HR的面试邀请,本来不想去的, 和自己的方向不是太一致,看了看面试通知, 就在我家旁边, 那就试试白。 9:00去面试, 去到了,一层站了好多人(还要领零时卡),HR把我们分开安排去做面试题,本人就讨厌做面试题的(无赖,在别人的地盘就听别人的), 有两道编程题, 大概用30分钟,写完了, 为了赶时间,没怎么看就交了, 过一会有个技术来了, 就是让简单介绍一下自己,看了看我的简历,过一会说我的面试题第一题, 有bug, 我当时想不是在机器上敲的, 有问题正常,要是工作有bug可以调吗, 大致思路就是这样的。他也没说什么, 然后就聊聊别的, 叫我等通知,个人感觉没戏。
回到公司, 我就测试了一下那道面试题, 测试了一下没有发现有什么bug, 题目内容就是计算一下表达式中小括号匹配的个数,我的主要思路就是压栈的思想,我的代码如下:
static int regMatch(char *reg)
{
char * tmp = reg;
int flag = 0;
int ret = 0;
for(;*tmp != ''; tmp++)
{
if(*tmp == '(')
{
flag ++;
}
if(flag != 0 && * tmp == ')')
{
flag --;
ret ++;
}
}
return ret;
}
那位大神给我看看, 学习学习,谢谢
|
如3楼所说,如果传递的是空指针,会出现段错误。
此外,当第一个if判断字符为左括号时,可以直接继续循环,没有必要进行接下来的if判断,此处可优化。
关于4楼所述,我想计算机仅能处理有限的值是必然的,可能考题的重点不在这里。如果一定要考虑这方面的话,我觉得unsigned long long可能更适合一些。
此外,当第一个if判断字符为左括号时,可以直接继续循环,没有必要进行接下来的if判断,此处可优化。
关于4楼所述,我想计算机仅能处理有限的值是必然的,可能考题的重点不在这里。如果一定要考虑这方面的话,我觉得unsigned long long可能更适合一些。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。