迅雷算法笔试题!该怎么解决
迅雷算法笔试题!!!
1. 在搜索引擎中,经常会发生输入用户错误的情况。请设计一种算法,能对用户输入的错误单词进行纠错。
输入:错误或正确的英文输入; 输出: 最相近的正确英文单词
要求:
1) 给出详细的算法说明;
2) 实现此算法,并给出测试环境;
3) 本题目要求效率较高,在结果正确的前提下,要求性能近可能高;需要给出测试数据:譬如每秒处理次数。
*****************************
单词的相似度计算
*****************************
4) 给出算法可以继续改进的地方。
2. 现在互联网应用比较广泛的两种传输协议:TCP、UDP。TCP实现的是可靠传输。请用UDP协议实现一个可靠数据传输的算法。
要求:
1) 给出详细的算法说明;
2) 实现此算法,并给出测试环境
3) 本题目对传输速度有要求,在保证传输结果正确的情况下,要求传输速度近可能快;要求给出测试数据。
4) 和TCP协议相比,本算法有什么优缺点。
------解决方案--------------------
顶一下,这两题都不容易
------解决方案--------------------
深度查找。神经虚拟技术。
------解决方案--------------------
第一题:
首先自己得有正确的单词。定义一个diff值去和每个正确的单词比较找出diff值最小的。
优化:对正确的单词做一些分类,如从长度上分开。这样比较的时候先比较与输入单词同样长度的...
第二题:思路比较清楚,就是用udp模拟tcp的协议栈。包括三次连接握手,四次断开握手。数据重传机制。
细节点还需要处理 滑动窗口机制,避免拥塞算法。
------解决方案--------------------
第一题前段时间有个帖子有个类似的题目,大概是worng怎么自动变成wrong。
我觉得还是要先构建一个Trie树,查不到的话就当做错误单词处理,
对于错误单词分情况考虑:
1.个别字符错误
2.缺个别字符
3.多个别字符
然后在搜索中分别对应处理。
可以改进的地方:
1. 我感觉一般google,baidu的错误纠正一般不改动第一个字符,这里也可以假定第一个字符对的
2. 如果有个常用正确单词的使用频率来做最后选择的参考就好了
3.如果有个常见错误单词表就更好了。
4. Trie树搜索时各个分支有个权重更好。譬如可以通过对比剩下的字符数目来设定这个权重。
------解决方案--------------------
1题个人意见
data mining中有个叫prefix search的算法,这个加上edit distance算法应该可以实现。
2题这个真要对tcp协议熟悉,flow control什么的
------解决方案--------------------
有点难度
------解决方案--------------------
难啊 崩溃
------解决方案--------------------
坐等高手
------解决方案--------------------
差距啊!……
1. 在搜索引擎中,经常会发生输入用户错误的情况。请设计一种算法,能对用户输入的错误单词进行纠错。
输入:错误或正确的英文输入; 输出: 最相近的正确英文单词
要求:
1) 给出详细的算法说明;
2) 实现此算法,并给出测试环境;
3) 本题目要求效率较高,在结果正确的前提下,要求性能近可能高;需要给出测试数据:譬如每秒处理次数。
*****************************
单词的相似度计算
*****************************
4) 给出算法可以继续改进的地方。
2. 现在互联网应用比较广泛的两种传输协议:TCP、UDP。TCP实现的是可靠传输。请用UDP协议实现一个可靠数据传输的算法。
要求:
1) 给出详细的算法说明;
2) 实现此算法,并给出测试环境
3) 本题目对传输速度有要求,在保证传输结果正确的情况下,要求传输速度近可能快;要求给出测试数据。
4) 和TCP协议相比,本算法有什么优缺点。
------解决方案--------------------
顶一下,这两题都不容易
------解决方案--------------------
深度查找。神经虚拟技术。
------解决方案--------------------
第一题:
首先自己得有正确的单词。定义一个diff值去和每个正确的单词比较找出diff值最小的。
优化:对正确的单词做一些分类,如从长度上分开。这样比较的时候先比较与输入单词同样长度的...
第二题:思路比较清楚,就是用udp模拟tcp的协议栈。包括三次连接握手,四次断开握手。数据重传机制。
细节点还需要处理 滑动窗口机制,避免拥塞算法。
------解决方案--------------------
第一题前段时间有个帖子有个类似的题目,大概是worng怎么自动变成wrong。
我觉得还是要先构建一个Trie树,查不到的话就当做错误单词处理,
对于错误单词分情况考虑:
1.个别字符错误
2.缺个别字符
3.多个别字符
然后在搜索中分别对应处理。
可以改进的地方:
1. 我感觉一般google,baidu的错误纠正一般不改动第一个字符,这里也可以假定第一个字符对的
2. 如果有个常用正确单词的使用频率来做最后选择的参考就好了
3.如果有个常见错误单词表就更好了。
4. Trie树搜索时各个分支有个权重更好。譬如可以通过对比剩下的字符数目来设定这个权重。
------解决方案--------------------
1题个人意见
data mining中有个叫prefix search的算法,这个加上edit distance算法应该可以实现。
2题这个真要对tcp协议熟悉,flow control什么的
------解决方案--------------------
有点难度
------解决方案--------------------
难啊 崩溃
------解决方案--------------------
坐等高手
------解决方案--------------------
差距啊!……