`

华为核心网 地点深圳 面试题

阅读更多

部门:深圳华为核心网

1. 121 1221 12321 123454321 不转换为字符 判断一个整形数据为对称。
2. 不使用内存拷贝函数,删除MAX_LENGTH = 100的字符串中i个字符后的j个字符
3. 写一个函数,判断左右括号是否匹配。

第一题 代码:数字放到一个数组中 从头到尾比较一次

bool checknumber(unsigned int number)
{

unsigned int array[32] = {0};
//查找首位置对称数字
unsigned int first= 0;
unsigned int num = number;

while(num)
{
array[first] = num%10;
num = num/10;
first++;
}
for(unsigned int i = 1; i <= first; i++)
{
if(array[i - 1] != array[first - i])
{
return false;
}
}
return true;
}

第二题 估计知道

第三题 代码 使用两个栈

unsigned int check_str(char* str)
{
assert(str);
char ch;
unsigned int pos= 0;
stack<char> stack_char;
while (*str)
{
ch = *str++;
pos++;
if(ch == '(')
{
stack_char.push(ch);
}
else if(ch == ')')
{
if(stack_char.empty())
{
return pos;
}
else
{
stack_char.pop();
}
}
}
if(!stack_char.empty())
{
return pos;
}
else
{
return 0;
}
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics