1、1实验名称: 服务器端信息过滤算法的设计与实现2算法摘要:1. 算法介绍:对于日益复杂的网络事务处理,服务器端要完成的工作纷繁复杂,服务器端的信息过滤显得尤为重要有尤为复杂,因此一个科学合理的算法需要去完成这些工作2. 算法要求:高效性:高效率体现在两个方面:首先是处理的准确性,对于处理的信息做一定的规范,算法能够准确处理这些要处理的规范,其次是速度问题,对于大量信息的处理,效率的问题表现在所用时间扩展性:这个特性对于这个特定的问题显得尤为重要,因为信息的未知性,我们不知道之后的变化,也就是算法所要处理的内容的变化性,因此良好的扩展性是必要的3程序思想以及算法如下步骤:步骤一:建立统一的模板
2、Filter模块一 模块五模块四模块二 模块三步骤二:建立处理链chainFilter模块一 模块五模块四模块二 模块三Filter1 Filter5Filter4Filter3Filter2步骤三:建立模块内部处理方法:doFilter():具体代码:public String doFilter(String str) /process the html tag String r = str.replace(, );return r;public class FaceFilter implements Filter Overridepublic String doFilter(String
3、str) return str.replace(“:)“, “V“);import java.util.ArrayList;import java.util.List;public class FilterChain implements Filter List filters = new ArrayList();public FilterChain addFilter(Filter f) this.filters.add(f);return this;public String doFilter(String str) String r = str;for(Filter f: filters
4、) r = f.doFilter(r); return r;5算法测试结果:输入:结果:6实验总结:在实现算法的时候深刻的感受到了思维模式对解决问题的方法的影响,解决一个问题的途径是从问题本身出发,那就是以终为始,一直牢记着要怎么解决问题,以及问题的重点是什么,设计算法是重点,我也相信通过这一次实验不能让我有多少质的提高,但是我相信通过这次实验让我学到了如何科学的去解决一个问题,严谨的流程是什么。当设计算法的时候,我一开始没有想到算法的设计就觉得这是一个很好解决的问题,只需要利用到 Java 中的 replace 方法就够了,但是对于适应性的考察却忽视了,后来了解到了设计模式对解决的问题的扩充。后来用这样的方式解决的问题,对于语言的运用有了一定的提高,对结构有了一定的认识,通过团队的协作让我了解到了团队合作的重要性。总之,我和我的团队在这次实验有了很多收获。7分工合作:组长:李飞 13111278 李飞实现了算法组员:李超 13111276 李超做了算法的设计与演示组员:谭淞哲 13111290 谭淞哲做了总结与报告Web 信息检索实验服务器端信息过滤算法