private static int isInList(List<Restaurant> list, Restaurant r) { if (list.Count == 0) return -1; for (int i = 0; i < list.Count; i++) { if (r.isMatch(list[i])) return i; else if (isInList(list[i].matchingRestaurants, r) > -1) return i; } return -1; }