首页 > 其他 > 详细

算法6-5:哈希表应用之集合

时间:2014-06-17 22:27:48      阅读:409      评论:0      收藏:0      [点我收藏+]

可以通过哈希表实现高效的集合操作。


接口


一个集合对象可以包含了以下接口:

public interface Set<Key extends Comparable<Key>> {
    public void add(Key key);
    public boolean contains(Key key);
    public void remove(Key key);
    public int size();
    public Iterator<Key> iterator();
}


黑名单过滤应用


代码

import java.util.Set;
import java.util.LinkedHashSet;
 
public class BlackList {
    public static void main(String[] argv) {
        String[] urls = new String[]{"baidu.com", "abc.com", "porn.com", "youtube.com", "facebook.com"};
        String[] blacklist = new String[]{"porn.com", "youtube.com", "facebook.com"};
 
        // 建立黑名单集合
        Set<String> black = new LinkedHashSet<String>();
        for(String b : blacklist) {
            black.add(b);
        }
 
        // 过滤非法网站
        for(String url : urls) {
            if(!black.contains(url)) {
                System.out.println(url);
            }
        }
    }
}


输出结果:

baidu.com
abc.com
porn.com is blocked
youtube.com is blocked
facebook.com is blocked


从输出结果中可以看出,一些非法网站被过滤了。


算法6-5:哈希表应用之集合,布布扣,bubuko.com

算法6-5:哈希表应用之集合

原文:http://blog.csdn.net/caipeichao2/article/details/31414617

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!