2014小米校园招聘研发类北京站笔试经验
时间:2013-10-13
地点:北京
职位:研发类
小米的`校招笔试,2小时三道编程题。
Q1:给出一个int数组,通过变换使得左边全为奇数右边全为偶数。
思路:常见题,递归实现。双指针从头尾分边对数组进行扫描,对于“左偶右奇”的情况,交换两数同时指针向中间移动一位。循环上述过程直到指针重合。
Q2:给出一颗有序二叉树,将它转换为有序的双向链表输出。
有序二叉树形如:
10
/ \
6 14
/ \ / \
4 812 16
双向链表形如:
4=6=8=10=12=14=16
思路:参考二叉树中序遍历。
Q3:字符串的四则运算。给出一个字符串,包含0~9的数字和+-*/()的运算符,-仅代表减号不代表负数。举例如下:
输入:1+2*(3-4)
输出:-1.
思路:(1) 分析字符串的合法性 (2) 模拟四则运算规则,按照先括号后乘除最后加减的顺序计算,(逆波兰式)
测试用例:
a.空串
b.一般输入, 1+2*(3-4)
c.多层括号嵌套, 1+2*((3-4)+8)
d.非法字符输入,9+A+8
e.非法计算符号,*-20+5
f.括号不匹配,1+2*(3-4)(
g.括号内为空,1+2*()*9
h.除零情况,1+2*6/(3-3)
【2014小米校园招聘研发类北京站笔试经验】相关文章:
中行校园招聘笔试经验12-03
美团2015校园招聘研发笔试题11-06
阿里校园招聘研发工程师笔试题10-23
2017中行校园招聘笔试经验11-30
公司招聘笔试经验10-30
教师招聘笔试经验12-19
企业招聘笔试经验12-04
腾讯技术类校园招聘笔试试题11-22
银行校园招聘笔试11-29
关于教师招聘笔试经验10-19