blindwrite
20-03-2006, 17:40
Devo fare il seguente esercizio: Trasformata di Burrows-Wheeler.
La trasformata di Burrows-Wheeler (BWT) è un algoritmo molto usato per la
compressione dei dati. Implementare la tecnica di codifica.
Bisogna richiedere all'utente una stringa di testo avente una lunghezza massima
MAX_STR (l'utente può inserire anche meno di MAX_STR caratteri) e bisogna generare
tutte le possibili rotazioni della stringa.
Le varie rotazioni così generate, vanno ordinate considerate come stringhe da
ordinare alfabeticamente in una matrice, di cui si stampa a schermo l'ultima
colonna che è la trasformata BWT della stringa iniziale.
In pratica il programma deve:
* Chiedere di inserire una stringa;
* Generare tutte le rotazioni della stringa in una matrice;
* Ordinare alfabeticamente le RIGHE della matrice contenenti le rotazioni;
* Stampare a schermo l'ultima COLONNA della matrice.
Es.:
Inserisci una stringa:
BANANA
Le rotazioni sono:
BANANA
ANANAB
NANABA
ANABAN
NABANA
ABANAN
Matrice stringhe ordinate:
ABANAN
ANABAN
ANANAB
BANANA
NABANA
NANABA
sono arrivato a fare le rotazioni ma adesso non riesco a ordinare la matrice
posto il programma che ho scritto, con l'ordinamento sbagliato.
grazie in anticipo a tutti coloro che mi aiuteranno!!!
La trasformata di Burrows-Wheeler (BWT) è un algoritmo molto usato per la
compressione dei dati. Implementare la tecnica di codifica.
Bisogna richiedere all'utente una stringa di testo avente una lunghezza massima
MAX_STR (l'utente può inserire anche meno di MAX_STR caratteri) e bisogna generare
tutte le possibili rotazioni della stringa.
Le varie rotazioni così generate, vanno ordinate considerate come stringhe da
ordinare alfabeticamente in una matrice, di cui si stampa a schermo l'ultima
colonna che è la trasformata BWT della stringa iniziale.
In pratica il programma deve:
* Chiedere di inserire una stringa;
* Generare tutte le rotazioni della stringa in una matrice;
* Ordinare alfabeticamente le RIGHE della matrice contenenti le rotazioni;
* Stampare a schermo l'ultima COLONNA della matrice.
Es.:
Inserisci una stringa:
BANANA
Le rotazioni sono:
BANANA
ANANAB
NANABA
ANABAN
NABANA
ABANAN
Matrice stringhe ordinate:
ABANAN
ANABAN
ANANAB
BANANA
NABANA
NANABA
sono arrivato a fare le rotazioni ma adesso non riesco a ordinare la matrice
posto il programma che ho scritto, con l'ordinamento sbagliato.
grazie in anticipo a tutti coloro che mi aiuteranno!!!