暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

小米 2018 校招笔试题(算法岗)

金牌程序员 2019-02-23
959

题型为:选择题 10 道,编程题 3 道,问答题 2 道。


编程题:


第1题、序列模式匹配 

时间限制:C/C++语言 1000MS;其他语言 3000MS 

内存限制:C/C++语言 65536KB;其他语言 589824KB 

题目描述: 给定文本 text 和待匹配字符串 pattern, 二者皆只包含小写字母, 并且不为空。 在 text 中找出匹配 pattern 的最短字符串,匹配指按序包含 pattern,但不要 求 pattern 连续。 

如 text 为 abaacxbcbbbbacc,pattern 为 cbc,text 中满足条件的是 abaacxbcbbbbacc 红色部分。 


输入 

每行一个 text 和一个 pattern,用空格分隔

 

输出 

输出最短匹配序列起止位置,用空格分隔。若无满足条件的答案,则起止均为-1 


样例输入 

abaacxbcbbbbacc cbc 

abc x 

aaabcac ac 


样例输出 

4 7 

-1 -1 

5 6


第2题、求整数的阶乘 

时间限制:C/C++语言 1000MS;其他语言 3000MS 

内存限制:C/C++语言 65536KB;其他语言 589824KB 

题目描述: 求任一正整数的阶乘(注意:是任意正整数) 


输入 

输入一个正整数 


输出 

输出一个正整数 


样例输入 

10 


样例输出 

6

3628800


第3题、路径规划 

时间限制:C/C++语言 1000MS;其他语言 3000MS 

内存限制:C/C++语言 65536KB;其他语言 589824KB 

题目描述: 兔子从 A 地到 B 地, 当中每 1 公里有一个休息站。兔子体力每次最多可连续行走 2 公里, 也就是说兔子可以选择行走 1 公里或者 2 公里进行休息, 然后继续前进。 假设 A 地到 B 地距离 N 公里,求兔子的行走休息方案有多少种(每一种组合算一 种)。 


备注:可不考虑整型溢出的问题,测试样例结果保证不超出 2^31。

 

输入 

输入一个整型,表示 A 地到 B 地的距离 


输出 

输出一个整型,表示行走方案数目 


样例输入 


样例输出 

8



问答题:


第1题、关于 K-means 聚类算法问题: 

  1)、写出关于该算法的优化目标 

  2)、描述该算法的终止条件 

  3)、根据 K-means 算法描述 EM 算法的基本原理与步骤 

  4)、写出基于 MapReduce 分布式实现 K-means 算法的步骤 


第2题、逻辑回归-参数迭代公式推导


文章转载自金牌程序员,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论