C/Traballar con listas encadeadas: Diferenzas entre revisións

Contido eliminado Contido engadido
Gallaecio (conversa | contribucións)
mSen resumo de edición
Liña 79:
 
====Engadir un elemento a unha lista simple====
O proceso para engadir un novo elemento a unha lista encadeada simple non é complicao de entender. A función recibirá a información nova que se vai engadir á lista e o enderezo do enderezo da lista (por se tiver que cambiar). Entón, a función traballará con tres punteiros, un para gardar un elemento da lista (o que se vai analizando), outro para gardar o elemento anterior (que irá mudando) e outro para gardar o novo elemento.
 
Así, o proceso consistirá básicamente en ir movéndose polos datos da lista ata atopar un elemento ─<code>actual</code>─ que teña que ir diante do <code>novo</code> elemento. Unha vez atopado, fanse as modificacións necesarias para que <code>anterior</code> apunte a <code>novo</code> e este a <code>actual</code>, é dicir, consisten en poñer o novo elemento entre o anterior a el e o seguinte.
 
Imaxinemos unha lista encadeada simple en que os seus elementos conteñen só un dato de tipo <code>signed int</code> ─ademais de conter o punteiro que sinala ao seguinte elemento da lista─. Isto simplificará o exemplo, pero valerá para ilustrar calquera caso. Para introducir novos datos nesta lista encadeada simple de exemplo utilizaríase unha función como a seguinte:
<source lang=c>