C# Class Platform.Sandbox.CompressionExperiments.Compressor

显示文件 Open project: Konard/LinksPlatform

Public Methods

Method Description
Compress ( ulong sequence ) : ulong
Compressor ( SynchronizedLinks links, Platform.Data.Core.Sequences.Sequences sequences ) : System
Precompress0 ( ulong sequence ) : ulong[] Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . Faster version (pairs' frequencies dictionary is not recreated).
Precompress1 ( ulong sequence ) : ulong[] Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . Faster version (pairs' frequencies dictionary is not recreated).
Precompress2 ( ulong sequence ) : ulong[] Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . Faster version (pairs' frequencies dictionary is not recreated).
Precompress3 ( ulong sequence ) : ulong[] Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . If pair repeats twice it is maximum pair.
Precompress4 ( ulong sequence ) : ulong[] Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . If pair repeats twice it is maximum pair.
Precompress5 ( ulong sequence ) : ulong[] Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . Global dictionary

Private Methods

Method Description
DecrementFrequency ( UInt64Link pair ) : void
IncrementFrequency ( UInt64Link pair ) : ulong
ResetMaxPair ( ) : void
UpdateMaxPair ( ) : void
UpdateMaxPair ( UInt64Link pair, ulong frequency ) : void
UpdateMaxPair2 ( ) : void
UpdateMaxPair2 ( UInt64Link pair, ulong frequency ) : void

Method Details

Compress() public method

public Compress ( ulong sequence ) : ulong
sequence ulong
return ulong

Compressor() public method

public Compressor ( SynchronizedLinks links, Platform.Data.Core.Sequences.Sequences sequences ) : System
links SynchronizedLinks
sequences Platform.Data.Core.Sequences.Sequences
return System

Precompress0() public method

Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . Faster version (pairs' frequencies dictionary is not recreated).
public Precompress0 ( ulong sequence ) : ulong[]
sequence ulong
return ulong[]

Precompress1() public method

Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . Faster version (pairs' frequencies dictionary is not recreated).
public Precompress1 ( ulong sequence ) : ulong[]
sequence ulong
return ulong[]

Precompress2() public method

Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . Faster version (pairs' frequencies dictionary is not recreated).
public Precompress2 ( ulong sequence ) : ulong[]
sequence ulong
return ulong[]

Precompress3() public method

Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . If pair repeats twice it is maximum pair.
public Precompress3 ( ulong sequence ) : ulong[]
sequence ulong
return ulong[]

Precompress4() public method

Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . If pair repeats twice it is maximum pair.
public Precompress4 ( ulong sequence ) : ulong[]
sequence ulong
return ulong[]

Precompress5() public method

Original algorithm idea: https://en.wikipedia.org/wiki/Byte_pair_encoding . Global dictionary
public Precompress5 ( ulong sequence ) : ulong[]
sequence ulong
return ulong[]