关联数组去重法

创建一个辅助数组,元素个数为要去重值的最大值+1,需要去重的值作为辅助数组temp_hash的key,检测第一个值0x19时,把temp_hash[0x19]赋值1,再次检测到0x19时,判断temp_hash[0x19]的值,为1时表示0x19检测过,为0时表示0x19没有检测过。

 

如要去重的数组为[0x19, 0x1a, 0x19, 0x1b, 0x1c, 0x01d, 0x1b, 0x1d, 0x1e, 0x1d]

则创建一个辅助数组hash,元数个数为0x1e+1,且每个元素的值为0。

------------------------------------------------------------------------------------------------------------------

检测开始:

0x19:  if  hash[0x19] == 0  , 判断是否检测过,0x19没检测过,后续处理;

0x1a:  if hash[0x1a]  == 0, 判断是否检测过,0x1a没检测过,后续处理;

0x19: if hash[0x19] == 0,判断是否检测过,0x19检测过,不作处理;

之后的操作,以此类推。

 

 

你可能感兴趣的:(DVB)