SlideShare ist ein Scribd-Unternehmen logo
1 von 8
Downloaden Sie, um offline zu lesen
RESUMO
RLE - Run
Length
Encoding
Introdução
 No mundo dos sistemas de informação não importa o
quão rápido sejam os computadores e redes actualmente,
os utilizadores irão sempre precisar de serviços rápidos
para o volume de dados com que trabalham.
 Para reduzir o volume de dados armazenados, ou
transferidos é vantajoso comprimir os mesmos para
optimizar o seu tamanha..
 É aqui que entram os algoritmos de compressão de dados,
iremos abordar o RLE (Run-Length-Encoding), o seu
funcionamento, vantagens e desvantagens.
Como funciona o algoritmo de dados sem perdas
chamado Run Length?
• Este método é normalmente utilizado quando existem
repetições numa string de dados.
Procedimento
a a a a a a a a b b b b b b c c
a 8 B 6 c 2
Run-length encoding
Visão Global
 Este algoritmo consiste em substituir grandes sequências de
dados por apenas um caracter seguido de um contador
que mostra o número de vezes que o caracter é repetido.
 Para clarificar isso, vejamos o exemplo seguinte:
 Esta sequência tem comprimento de 24 caracteres e
como podemos visualizar existem muitas repetições
 Usando o algoritmo run length, iremos transformar numa
string mais curta com o seu respectivo contador de
ocorrências.
aaaaaaaaaabbbaxxxxyyyzyx
a10b3a1x4y3z1y1x1
a10b3a1x4y3z1y1x1
Tamanho da String: 17
 Aproximadamente 70% do tamanho original
 30% de compressão
 Não é das soluções mais eficientes, pelo que ainda é
possível melhorar.
a10b3ax4y3zyx
 O comprimento da String é agora de 13 caracteres (54% do
comprimento inicial, ou seja, 46% de compressão)
 Não é necessário usar o valor 1 para apenas um caracter
 Até ao momento a compressãodescompressão da string
não apresenta qualquer problema.
 Mas, e se alterar-mos a string de caracteres para uma string
de inteiros?
75|75|75|75|75|75|10|45|58|30|30|30|30|8|8|8|8|8|3
75|6|10|45|58|30|4|30|8|5|3
 Caso os contadores não tivessem sublinhados, como
identificaríamos os valores dos contadores?
 Resposta: Inserindo uma FLAG!
!|75|6|10|45|58|!|30|4|30|!|8|5|3
 Assim sabemos que seguido da flag vem o valor da string
original seguido do seu número de repetições.
 Desta forma conseguimos saber que, seguido da flag, vem a
informação a comprimir seguido do seu numero de
ocorrências. Sendo o numero de ocorrências inferior a 3, não
é vantajoso colocar flag+ dados+ ocorrências, pois não
iremos reduzir espaço, podendo no pior dos caso, aumentar
o espaço ocupado.
Eficiência
 A eficiência depende:
 Numero de ocorrências de caracteres
 Média comprimento de repetições
caracter
Rácio compressão = tamanho dados não comprimidos
tamanho dados comprimidos

Weitere ähnliche Inhalte

Andere mochten auch

data compression technique
data compression techniquedata compression technique
data compression techniqueCHINMOY PAUL
 
Run-Length Encoding algorithm
Run-Length Encoding algorithmRun-Length Encoding algorithm
Run-Length Encoding algorithmHyeon Sik Song
 
Compression: Images (JPEG)
Compression: Images (JPEG)Compression: Images (JPEG)
Compression: Images (JPEG)danishrafiq
 
Fundamentals of Data compression
Fundamentals of Data compressionFundamentals of Data compression
Fundamentals of Data compressionM.k. Praveen
 

Andere mochten auch (8)

Huffman Coding
Huffman CodingHuffman Coding
Huffman Coding
 
data compression technique
data compression techniquedata compression technique
data compression technique
 
Run-Length Encoding algorithm
Run-Length Encoding algorithmRun-Length Encoding algorithm
Run-Length Encoding algorithm
 
Compression: Images (JPEG)
Compression: Images (JPEG)Compression: Images (JPEG)
Compression: Images (JPEG)
 
Data compression
Data compressionData compression
Data compression
 
Compression
CompressionCompression
Compression
 
JPEG Image Compression
JPEG Image CompressionJPEG Image Compression
JPEG Image Compression
 
Fundamentals of Data compression
Fundamentals of Data compressionFundamentals of Data compression
Fundamentals of Data compression
 

Ähnlich wie RLE - Run Length Encoding (UFP)

Aula 1 - Estudando o problema a ser resolvido
Aula 1 - Estudando o problema a ser resolvidoAula 1 - Estudando o problema a ser resolvido
Aula 1 - Estudando o problema a ser resolvidoEduardo de Lucena Falcão
 
Processamento Paralelo exemplo do Crivo de Erstótenes Paralelo e Sequencial
Processamento Paralelo exemplo do Crivo de Erstótenes Paralelo e SequencialProcessamento Paralelo exemplo do Crivo de Erstótenes Paralelo e Sequencial
Processamento Paralelo exemplo do Crivo de Erstótenes Paralelo e SequencialJaffer Veronezi
 
ESTRUTURAS_DE_REPETICAO.ppt
ESTRUTURAS_DE_REPETICAO.pptESTRUTURAS_DE_REPETICAO.ppt
ESTRUTURAS_DE_REPETICAO.pptFabianoVilhete3
 
05 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.005 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.0César Augusto Pessôa
 
Estudo e Avaliação do Problema de Otimização da Multiplicação de Cadeias de M...
Estudo e Avaliação do Problema de Otimização da Multiplicação de Cadeias de M...Estudo e Avaliação do Problema de Otimização da Multiplicação de Cadeias de M...
Estudo e Avaliação do Problema de Otimização da Multiplicação de Cadeias de M...Eduardo de Lucena Falcão
 
Análise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoAnálise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoGustavo Carvalho
 
II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...
II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...
II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...Eduardo de Lucena Falcão
 
Modelagem Analítica – Queueing Theory (Part I)
Modelagem Analítica – Queueing Theory (Part I)Modelagem Analítica – Queueing Theory (Part I)
Modelagem Analítica – Queueing Theory (Part I)Joao Galdino Mello de Souza
 
Apresentação comsolid 2016
Apresentação comsolid 2016Apresentação comsolid 2016
Apresentação comsolid 2016Laryssa Muniz
 
Aula rotulação automática - Automatic tagging
Aula rotulação automática - Automatic taggingAula rotulação automática - Automatic tagging
Aula rotulação automática - Automatic taggingFelipe
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascalangelicamenegassi
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascalangelicamenegassi
 
Otimização holistica de ambiente computacional
Otimização holistica de ambiente computacionalOtimização holistica de ambiente computacional
Otimização holistica de ambiente computacionalRodrigo Campos
 
Algoritmo estruturado
Algoritmo estruturadoAlgoritmo estruturado
Algoritmo estruturadodasko
 

Ähnlich wie RLE - Run Length Encoding (UFP) (20)

Aula 1 - Estudando o problema a ser resolvido
Aula 1 - Estudando o problema a ser resolvidoAula 1 - Estudando o problema a ser resolvido
Aula 1 - Estudando o problema a ser resolvido
 
Analise Algoritmos
Analise AlgoritmosAnalise Algoritmos
Analise Algoritmos
 
Processamento Paralelo exemplo do Crivo de Erstótenes Paralelo e Sequencial
Processamento Paralelo exemplo do Crivo de Erstótenes Paralelo e SequencialProcessamento Paralelo exemplo do Crivo de Erstótenes Paralelo e Sequencial
Processamento Paralelo exemplo do Crivo de Erstótenes Paralelo e Sequencial
 
ESTRUTURAS_DE_REPETICAO.ppt
ESTRUTURAS_DE_REPETICAO.pptESTRUTURAS_DE_REPETICAO.ppt
ESTRUTURAS_DE_REPETICAO.ppt
 
0001
00010001
0001
 
000003 complexidade
000003 complexidade000003 complexidade
000003 complexidade
 
05 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.005 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.0
 
Estudo e Avaliação do Problema de Otimização da Multiplicação de Cadeias de M...
Estudo e Avaliação do Problema de Otimização da Multiplicação de Cadeias de M...Estudo e Avaliação do Problema de Otimização da Multiplicação de Cadeias de M...
Estudo e Avaliação do Problema de Otimização da Multiplicação de Cadeias de M...
 
Análise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoAnálise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenação
 
II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...
II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...
II EPI - Estudo e Avaliação do Problema de Otimização da Multiplicação de Cad...
 
Laços de Repetição
Laços de RepetiçãoLaços de Repetição
Laços de Repetição
 
Modelagem Analítica – Queueing Theory (Part I)
Modelagem Analítica – Queueing Theory (Part I)Modelagem Analítica – Queueing Theory (Part I)
Modelagem Analítica – Queueing Theory (Part I)
 
Apresentação comsolid 2016
Apresentação comsolid 2016Apresentação comsolid 2016
Apresentação comsolid 2016
 
Aula rotulação automática - Automatic tagging
Aula rotulação automática - Automatic taggingAula rotulação automática - Automatic tagging
Aula rotulação automática - Automatic tagging
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
Cap1.pdf
Cap1.pdfCap1.pdf
Cap1.pdf
 
Logica Programação. ...
Logica Programação. ...Logica Programação. ...
Logica Programação. ...
 
Otimização holistica de ambiente computacional
Otimização holistica de ambiente computacionalOtimização holistica de ambiente computacional
Otimização holistica de ambiente computacional
 
Algoritmo estruturado
Algoritmo estruturadoAlgoritmo estruturado
Algoritmo estruturado
 

RLE - Run Length Encoding (UFP)

  • 2. Introdução  No mundo dos sistemas de informação não importa o quão rápido sejam os computadores e redes actualmente, os utilizadores irão sempre precisar de serviços rápidos para o volume de dados com que trabalham.  Para reduzir o volume de dados armazenados, ou transferidos é vantajoso comprimir os mesmos para optimizar o seu tamanha..  É aqui que entram os algoritmos de compressão de dados, iremos abordar o RLE (Run-Length-Encoding), o seu funcionamento, vantagens e desvantagens.
  • 3. Como funciona o algoritmo de dados sem perdas chamado Run Length? • Este método é normalmente utilizado quando existem repetições numa string de dados. Procedimento a a a a a a a a b b b b b b c c a 8 B 6 c 2 Run-length encoding
  • 4. Visão Global  Este algoritmo consiste em substituir grandes sequências de dados por apenas um caracter seguido de um contador que mostra o número de vezes que o caracter é repetido.  Para clarificar isso, vejamos o exemplo seguinte:  Esta sequência tem comprimento de 24 caracteres e como podemos visualizar existem muitas repetições  Usando o algoritmo run length, iremos transformar numa string mais curta com o seu respectivo contador de ocorrências. aaaaaaaaaabbbaxxxxyyyzyx a10b3a1x4y3z1y1x1
  • 5. a10b3a1x4y3z1y1x1 Tamanho da String: 17  Aproximadamente 70% do tamanho original  30% de compressão  Não é das soluções mais eficientes, pelo que ainda é possível melhorar. a10b3ax4y3zyx  O comprimento da String é agora de 13 caracteres (54% do comprimento inicial, ou seja, 46% de compressão)  Não é necessário usar o valor 1 para apenas um caracter
  • 6.  Até ao momento a compressãodescompressão da string não apresenta qualquer problema.  Mas, e se alterar-mos a string de caracteres para uma string de inteiros? 75|75|75|75|75|75|10|45|58|30|30|30|30|8|8|8|8|8|3 75|6|10|45|58|30|4|30|8|5|3  Caso os contadores não tivessem sublinhados, como identificaríamos os valores dos contadores?  Resposta: Inserindo uma FLAG! !|75|6|10|45|58|!|30|4|30|!|8|5|3  Assim sabemos que seguido da flag vem o valor da string original seguido do seu número de repetições.
  • 7.  Desta forma conseguimos saber que, seguido da flag, vem a informação a comprimir seguido do seu numero de ocorrências. Sendo o numero de ocorrências inferior a 3, não é vantajoso colocar flag+ dados+ ocorrências, pois não iremos reduzir espaço, podendo no pior dos caso, aumentar o espaço ocupado.
  • 8. Eficiência  A eficiência depende:  Numero de ocorrências de caracteres  Média comprimento de repetições caracter Rácio compressão = tamanho dados não comprimidos tamanho dados comprimidos