大数据算法学习笔记(四):数据流模型

一、数据流模型:

1、数据只能顺序扫描1次或几次。(超过O(n)的算法不可行)

2、能够使用的内存是有限的。(空间亚线性)

3、希望通过维护一个内存结果来给出相关性质的一个有效估计。


二、基础知识:

1、频繁元素:数据流中同一个元素可以出现多次,出现最频繁的元素。

n:不同元素个数。

m:数据流中元素个数。


2、zipf原则:典型的概率分布是高度倾斜的。只有少数是频繁元素


三、算法与分析:

Misra Gries(MG)算法:

处理元素x

已经为x分配计算器,增加之

没有相应计数器,但计数器的个数小于k,为x分配计数器,并设为1;否则,所有计数器减1,删除值为0的计数器。


统计x出现几次?

不精确估计:存在x的计数器,返回其值;否则,返回0.

精确估计:

设所有计数器的和为m',整个数据流的权重为m。

每一次计数器降低的步骤减少k个计数,同时并未记录此时输入的元素,即K+1次未计入。

最多有(m-m')/(k+1)个减少步骤。

估计值和真实值最多相差(m-m')/(k+1)


错误的界限和k成反比。


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值