Question #2 ------------ private void stretch () { int maxSize = definitions.length; String [] new_terms = new String [maxSize*2+1]; String [] new_definitions = new String [maxSize*2]; for (int i=0; i < currentSize; i++) { new_terms [i] = terms [i]; new_definitions [i] = definitions [i]; } terms = new_terms; definitions = new_definitions; } //Alternative 1 for search method private int search(String indexTerm) { terms [currentSize] = indexTerm int k = 0; while !(terms[k].equals (indexTerm)) k++ ; return k; } //Alternative 2 for search method private int search(String indexTerm) { int k = 0; while (k != currentSize) && (!terms[k].equals (indexTerm)) k++; return k; } } public void insert (String indexTerm, String definition) { int k = search (indexTerm); if (k < currentSize) return; if (k == definitions.length) stretch (); terms [currentSize] = indexTerm; definitions [currentSize] = definition; currentSize ++; } private String lookup(String indexTerm) { int k = search (indexTerm); if (k != currentSize) return definitions [k]; else return ""; }