[prev] [index] [next]

Searching in Linear Structures (cont)

Search in unsorted array, list, file:

Item searchArray(Key k, Item a[], int n) {
   int i;
   for (i = 0; i < n; i++) {
      if (key(a[i]) == k) return a[i];
   }
   return NOT_FOUND;
}
Item searchList(Key k, List L) {
   List n;
   for (n = L; n != NULL; n = n->next) {
      if (key(n->data) == k) return n->data;
   }
   return NOT_FOUND;
}
Item searchFile(Key k, FILE *f) { // open at start
   Item it;
   while (fread(&it, sizeof(Item), 1, f) == 1) {
      if (key(it) == k) return it;
   }
   return NOT_FOUND;
}