Salve ho questa generica struttura dati e la funzione list search,una domanda mi sta tormentando da qualche tempo,ma secondo voi se anzichè scrivere la funzione list search come:
[CODE]
TNode*list_search(TList list,TKey key){
TNode *curr;.........
[CODE]
la scrivo come :
[CODE]
TList list_search(TList list,TKey key){
TList curr;
[CODE]
è la stessa cosa concettualmente?
Questa è la struttura completa.Scusate anticipatamente se sto dicendo un'eresia...
codice:
struct SInfo{
TKey key;
TSat satellite;
};
typedef struct SInfo TInfo;
struct SNode {
TInfo info;
struct SNode *link;
};
typedef struct SNode TNode;
typedef TNode* TList;
TNode*list_search(TList list,TKey key){
TNode *curr;
curr=list;
while((curr!=NULL) &&(greater(key, curr->info.key)== true) )
{
curr=curr->link;
}
/* Analisi delle post - condizioni
C1: valore da cercare piu’
piccolo della Testa : curr != NULL
C2: valore da cercare maggiore
della Coda : curr != NULL
C3: valore da cercare compreso tra
quello di Testa e quello di Coda : curr->info>=info
*/
if ((curr!=NULL) && (equal( key,curr->info.key)==true) )
/* Elemento trovato */
return curr;
else
return NULL;