笔记-爬虫-去重/bloomfilter 1.      去重 为什么要去重? 页面重复:爬的多了,总会有重复的页面,对已爬过的页面肯定不愿意再爬一次. 页面更新:很多页面是会更新的,爬取这种页面时就需要进行判断,是否有更新. 在爬虫中新页面或页面更新称为增量,爬取就叫增量爬取了. 识别增量,有以下几种可能的方法: url识别:适合旧页面不会改变,只会有新页面出现的网站: 解析后内容识别:适合页面内容会更新的网站: 写入前与已存储部分进行匹配:最后一道防线. 目前主要的方法是url过滤,大体上是…
STL笔记(1)map STL之map ZZ from http://hi.baidu.com/liyanyang/blog/item/d5c87e1eb3ba06f41bd576cf.html 1.map中的元素其实就是一个pair. 2. map的键一般不能是指针, 比如int*, char*之类的, 会出错. 常用的就用string了,int也行. 3. map是个无序的容器, 而vector之类是有序的. 所谓有序无序是指放入的元素并不是按一定顺序放进去的, 而是乱序, 随机存放的(被映…
javaSE学习笔记(11)--- Map 1.Map集合 现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射.Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口. 我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图. Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方…
stream对象 Stream IntStream LongStream DoubleStream 创建 常用的三种方式: 使用list对象: list.stream() − 为集合创建串行流. list.parallelStream() − 为集合创建并行流. Arrays: Arrays.stream( T[] array) − 为数组创建流(可以创建IntStream,LongStream,DoubleStrem). Stream: Stream.of(T... values) − 为一组…
在学习廖雪峰前辈的JavaScript教程中,遇到了一些需要注意的点,因此作为学习笔记列出来,提醒自己注意! 如果大家有需要,欢迎访问前辈的博客https://www.liaoxuefeng.com/学习. Map与Set Map和Set是ES6标准新增的数据类型. Map JavaScript的默认对象表示方式{}可以视为其他语言中的Map或Dictionary的数据结构,即一组键值对. 但是JavaScript的对象有个小问题,就是键必须是字符串.但实际上Number或者其他数据类型作为键也…
单值去重不写了,记录对象去重 随手一个对象: @Data @AllArgsConstructor public class Milk { private Integer key; private String value; } 操作: package com.yus.util; import java.util.*; import java.util.stream.Collectors; import static java.util.Comparator.comparing; import s…
stream的定义:对一个源中的一系列元素进行聚合操作. 一系列元素:stream对一组有特定类型的元素提供了一个接口.但是stream并不真正存储元素,元素根据需求被计算出来. 源:stream可以处理任何一种数据提供源,比如集合.数组.IO资源. 聚合操作:stream支持类似sql一样的操作,常规的操作类似函数试语言,比如filter,map,reduce,find,match,sorted等. stream还有两个特性使它和collection不同: 管道:许多stream操作会返回一个…
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> </body> </html> <script> //数组,冒泡排序,把数组从小到大排序 function bubbleSort(array) { if(Object.prototype.t…
在这篇文章里,我们将提供Java8 Stream distinct()示例. distinct()返回由该流的不同元素组成的流.distinct()是Stream接口的方法. distinct()使用hashCode()和equals()方法来获取不同的元素.因此,我们的类必须实现hashCode()和equals()方法. 如果distinct()正在处理有序流,那么对于重复元素,将保留以遭遇顺序首先出现的元素,并且以这种方式选择不同元素是稳定的.在无序流的情况下,不同元素的选择不一定是稳定的…
一.介绍 通常来说,Map是一个由键值对组成的数据结构,且在集合中每个键是唯一的. 二.笔记 /** * Map:接口. 不是collection的子类 key -value 键值对 key唯一不能重复 * 当再次使用相同的key进行保存数据会覆盖之前的key所对应的value值 * * hashMap:底层是哈希表,key符合哈希表特性 * Treemap:底层是二叉树 * @author HuTiger * */ public class MapStudy { public static v…