近几年中国移动校招笔试题及答案.docx
近几年中国移动校招笔试题及答案
题目1:编程题
题目:编写一个Python函数,计算一个字符串中所有字符的出现次数。
```python
defcount_characters(s):
char_count={}
forcharins:
ifcharinchar_count:
char_count[char]+=1
else:
char_count[char]=1
returnchar_count
测试代码
test_string=example
print(count_characters(test_string))输出:{e:2,x:1,a:1,m:1,p:1,l:1}
```
题目2:数据结构题
题目:请说明什么是平衡二叉树,并给出一个判断平衡二叉树的算法。
答案:
平衡二叉树是指对于任何一个节点,其左右子树的高度差绝对值不超过1的二叉树。
判断平衡二叉树的算法可以使用递归,每次检查节点的高度,同时判断其左右子树是否平衡。
```python
classTreeNode:
def__init__(self,val=0,left=None,right=None):
self.val=val
self.left=left
self.right=right
defis_balanced(root):
defcheck_balance(node):
ifnotnode:
returnTrue,0
left_balanced,left_height=check_balance(node.left)
right_balanced,right_height=check_balance(node.right)
return(left_balancedandright_balancedandabs(left_heightright_height)=1,
max(left_height,right_height)+1)
returncheck_balance(root)[0]
示例使用
构建一个平衡二叉树
1
/\
23
/\\
456
root=TreeNode(1)
root.left=TreeNode(2)
root.right=TreeNode(3)
root.left.left=TreeNode(4)
root.left.right=TreeNode(5)
root.right.right=TreeNode(6)
print(is_balanced(root))输出:True
```
题目3:逻辑推理题
题目:如果所有的猫都怕水,而小花不是怕水的动物,那么下列哪项结论是正确的?
A.小花不是猫
B.所有的猫都不是小花
C.有些不怕水的动物是猫
D.有些猫怕水
答案:A.小花不是猫
题目4:数学题
题目:一个数列的前三项是1,1,2,之后每一项都是前两项之和,请问第10项是多少?
答案:这是一道斐波那契数列的问题,第10项是55。