Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoDino Paoletti Modificato 10 anni fa
1
1 Modulo II – Dettagli Deve: (1)Scorrere tutti gli elementi del dizionario (usare la lista ls della table ) (2)Per ogni elemento del dizionario: (2.1) Accedere al corrispondente file (2.2) Analizzarlo parola per parola (usando next_word ) per costruire il suo dizionario locale e le due liste di link ( struct info_ipertesto ) (2.3) salvarlo nel campo info
2
2 Costruire il dizionario locale Impresa Pos:1 Impresa Pos:5 Impresa Pos:20 Fratelli Rossi HitList Dizionario Locale
3
3 Il dizionario locale: strutture dati e algoritmi struct elem_hitlist{ info_word *info_occ_word; struct elem_hitlist *next_elem; } struct elem_diz_loc{ char *parola; struct elem_hitlist *hitlist; int dim; struct elem_diz_loc *next_word; Data la prossima parola nel file: - cerca nel dizionario locale se la parola esiste. - se esiste, aggiungi un elemento alla hitlist di quella parola e incrementa il contatore di occorrenze - se non esiste, aggiungi un elemento al dizionario locale per quella parola
4
4 Grafo dei link struct info_link{ struct tabelem *ptr_pagina; /* pagina*/ int molteplicita /* # link */ struct info_link *next /* prox elem */ } struct info_link *lista_in, *lista_out; Variante 1. Prevede una inzializzazione iniziale di lista_in e lista_out per tutte le pagine Se la prossima parola nel file F è un link alla pagina P: - cerca nella lista_out di F se il link a P già esiste - se non esiste aggiorna la lista_out di F aggiungendo un nuovo elemento. Aggiorna la lista_in di P. - se esiste, controlla se la posizione del link e la stessa. Se no aggiorna lista_out di F e lista_in di P incrementando la molteplicità.
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.