Ho riscontrato il seguente problema:
Ho un array che viene prodotto dall'analisi di un file yaml che contiene pattern nella seguente struttura.
"Programming books"
Title:
a list of titles
Author:
"Art Books"
Title:
foo
bar
Author:
Mrs. Foo
Mr. Bar
Year:
il programma dovrebbe ricevere un input casuale e trovare se c'è un libro con quel particolare Titolo, Autore e Anno.
Finora sto utilizzando il seguente
foreach book_type,values from config{
tag_match = 0
foreach tag from values{
tag_no = values.length()
foreach value from tag{
if value in input
tag_match++
}
}
if tag_match == values.length()
/* tag the book matched continue matching*/
}
Il programma non dovrebbe ricevere molte linee di corrispondenza, in quanto dovrebbe ricevere un'enorme quantità di dati. Finora deve fare book_type.length () * tag.length () * value.length () iterazioni per ogni riga di input, c'è un modo migliore per farlo?