4° Anno TEORIA 2. Allocazione dinamica della memoria | Page 30

10: Allocazione dinamica della memoria Vers. 9.1 – Ottobre 2025
Graficamente Prima dell’ operazione( funzione) Dopo l’ operazione( funzione)
TESTA della sequenza
FONDO della sequenza
TESTA della sequenza
FONDO della sequenza
Pj
Pk
Pj
Pk
Pi
Pi
NODO da inserire
‣ in un punto qualsiasi utilizzeremo la funzione InsPos InsPos: S x N x Z + → S
che necessita di tre parametri in ingresso: uno identifica la sequenza che stiamo considerando [ Pj,.., Pk ], l’ altro il nodo Pi che vogliamo aggiungere ed il terzo la posizione m nella quale lo vogliamo inserire( con m diversa dalla prima e dall’ ultima per le quali esistono le operazioni apposite). La funzione restituirà la nuova sequenza ottenuta [ Pj,.., Pi,.., Pk ].
La generica chiamata alla funzione sarà: InsPos( [ Pj,.., Pk ], Pi, m) = [ Pj,.., Pi,.., Pk ]( con Pi in posizione m)
Graficamente Prima dell’ operazione( funzione) Dopo l’ operazione( funzione)
TESTA della sequenza
FONDO della sequenza
TESTA della sequenza
FONDO della sequenza
Posizione m
Pj
Pk
Pj
Pi
Pk
Pi
NODO da inserire
N. B. Ovviamente tale funzione sarà possibile se la lista ha almeno n nodi con n ≥ 3 a partire dalla posizione 2 fino alla posizione n-1.
Per inserire un nodo nelle posizioni di TESTA e FONDO occorrerà utilizzare le funzioni specifiche introdotte.
Autore: Rio Chierego( email: riochierego @ libero. it- sito web: www. riochierego. it) Pag. 30