int imin (int data[], int len, int (*compare)(int left, int right)) { int i; int smallest = data[0]; for (i = 1; i < len; i++) { if (compare (data[i], smallest) < 0) smallest = data[i]; } return smallest; }