几道面试题

阅读更多
从CSDN上看到几道有趣的面试题,记录下来。抽空逐个分析解答。
=========================

题目1:
有一句中间有拼错单词的英文句子,如:"Ths is a worng sentencce." 其中,拼错的单
词都可以通过1次或多次编辑操作(编辑操作 包括:"增加"、"删除"、"修改" 单词中的字
母)纠正,如:Ths增加一个i变成This; wrong先将o改成r,再将第二个r改成o就纠正为w
rong; sentencce中删除一个c就纠正为sentence. 假如我有一张单词表,里面有几十万个
单词,给你一个英文句子,如何发现其中出错的单词(即这个单词没有出现在我的单词表
中)并用最少的 编辑操作 纠正句子中的全部错误?

==========================

题目2:
我有一批很大的数据(约10T),每行是一个字符串(有重复)。现在的任务是想统计出重
复最多的 TOP 10% 的字符串都是哪些? 给你1000台机器,每台机器的配置如下:1G内存
,15G硬盘。
注意:是 TOP 10% 而不是 TOP 10.

==========================

题目3:
有一台微型计算机,1M内存、CPU是 1G Hz(即每秒状态转换10^9次),问最长的可终止的
程序要运行多长时间?

==========================

题目4:
有1枚硬币,正反均匀,即投掷出去后出现正面和反面的概率都是50%。
1) 投掷10次出现:3次正面、7次反面;
2) 投掷100次出现:30次正面、70次反面;
这两种情况的概率哪个大哪个小?你是如何分析的?如何较快的分析出这类的题目?

你可能感兴趣的:(面试,C,C++,C#)