Discussione sull’articolo "MQL5 Cookbook: Implementazione di un array associativo o di un dizionario per l'accesso rapido ai dati"

 

Il nuovo articolo MQL5 Cookbook: Implementazione di un array associativo o di un dizionario per l'accesso rapido ai dati è stato pubblicato:

Questo articolo descrive uno speciale algoritmo che consente di accedere agli elementi tramite le loro chiavi univoche. Qualsiasi tipo di dati di base può essere utilizzato come chiave. Ad esempio può essere rappresentato come una stringa o una variabile intera. Tale contenitore di dati è comunemente indicato come dizionario o array associativo. Fornisce un modo più semplice ed efficiente di risolvere i problemi.

Un array con elementi di tipo arbitrario soffre di un solo grande difetto: ci vuole molto tempo e fatica se si vuole inserire un nuovo elemento, specialmente se questo elemento deve essere inserito al centro dell'array. Gli elementi si trovano in una sequenza, quindi per l'inserimento è necessario ridimensionare l'array per aumentare di uno il numero totale di elementi e quindi riorganizzare tutti gli elementi che seguono l'oggetto inserito in modo che i loro indici corrispondano ai loro nuovi valori.

Supponiamo di avere un array composto da 7 elementi e di voler inserire un altro elemento in quarta posizione. Uno schema di inserimento approssimativo sarà il seguente:

Fig. 2. Ridimensionamento dell'array e inserimento di un nuovo elemento

Fig. 2. Ridimensionamento dell'array e inserimento di un nuovo elemento

Autore: Vasiliy Sokolov