Loading src/edu/bu/ec504/hw2/BST.java +5 −4 Original line number Diff line number Diff line Loading @@ -21,15 +21,15 @@ public class BST<keyType extends Comparable<keyType> > { * - if the search failed, this contains the last node before falling * off the tree during the search. Otherwise, it is null. */ searchRecord(Boolean theSearchResult, Integer theSearchCount, BST theLastSeen) { searchRecord(Boolean theSearchResult, Integer theSearchCount, BST<keyType> theLastSeen) { searchResult=theSearchResult; searchCount=theSearchCount; this.lastSeen =theLastSeen; } final Boolean searchResult; // true iff the search was successful public Integer searchCount=0; // the number of nodes visited in the search final BST lastSeen; public Integer searchCount; // the number of nodes visited in the search final BST<keyType> lastSeen; } // CONSTRUCTORS Loading Loading @@ -104,6 +104,7 @@ public class BST<keyType extends Comparable<keyType> > { else tmpRecord = leftChild.searchHelper(searchKey); assert tmpRecord != null; // tmpRecord should never be null here, if insertion is properly implemented. tmpRecord.searchCount++; // for this node return tmpRecord; } Loading src/edu/bu/ec504/hw2/Main.java +5 −5 Original line number Diff line number Diff line Loading @@ -11,13 +11,13 @@ class Main { BST<Integer> intTest = new BST<>(intElements); BST<String> strTest = new BST<>(strElements); BST.searchRecord result; BST<Integer>.searchRecord intResult; System.out.println("Your int BST is:\n"+intTest); System.out.println("... rightChild subtree:\n"+intTest.getRightChild()); result = intTest.contains(0); System.out.println("... 0 is in your BST? " + result.searchResult+" in "+result.searchCount+" steps;\n "+result.lastSeen); result = intTest.contains(6); System.out.println("... 6 is in your BST? " + result.searchResult+" in "+result.searchCount+" steps;\n "+result.lastSeen); intResult = intTest.contains(0); System.out.println("... 0 is in your BST? " + intResult.searchResult+" in "+intResult.searchCount+" steps;\n "+intResult.lastSeen); intResult = intTest.contains(6); System.out.println("... 6 is in your BST? " + intResult.searchResult+" in "+intResult.searchCount+" steps;\n "+intResult.lastSeen); System.out.println("Your string BST is:\n"+strTest); System.out.println("One rotation: "+new BstRotation(3, BstRotation.RotationType.ZAG)); Loading Loading
src/edu/bu/ec504/hw2/BST.java +5 −4 Original line number Diff line number Diff line Loading @@ -21,15 +21,15 @@ public class BST<keyType extends Comparable<keyType> > { * - if the search failed, this contains the last node before falling * off the tree during the search. Otherwise, it is null. */ searchRecord(Boolean theSearchResult, Integer theSearchCount, BST theLastSeen) { searchRecord(Boolean theSearchResult, Integer theSearchCount, BST<keyType> theLastSeen) { searchResult=theSearchResult; searchCount=theSearchCount; this.lastSeen =theLastSeen; } final Boolean searchResult; // true iff the search was successful public Integer searchCount=0; // the number of nodes visited in the search final BST lastSeen; public Integer searchCount; // the number of nodes visited in the search final BST<keyType> lastSeen; } // CONSTRUCTORS Loading Loading @@ -104,6 +104,7 @@ public class BST<keyType extends Comparable<keyType> > { else tmpRecord = leftChild.searchHelper(searchKey); assert tmpRecord != null; // tmpRecord should never be null here, if insertion is properly implemented. tmpRecord.searchCount++; // for this node return tmpRecord; } Loading
src/edu/bu/ec504/hw2/Main.java +5 −5 Original line number Diff line number Diff line Loading @@ -11,13 +11,13 @@ class Main { BST<Integer> intTest = new BST<>(intElements); BST<String> strTest = new BST<>(strElements); BST.searchRecord result; BST<Integer>.searchRecord intResult; System.out.println("Your int BST is:\n"+intTest); System.out.println("... rightChild subtree:\n"+intTest.getRightChild()); result = intTest.contains(0); System.out.println("... 0 is in your BST? " + result.searchResult+" in "+result.searchCount+" steps;\n "+result.lastSeen); result = intTest.contains(6); System.out.println("... 6 is in your BST? " + result.searchResult+" in "+result.searchCount+" steps;\n "+result.lastSeen); intResult = intTest.contains(0); System.out.println("... 0 is in your BST? " + intResult.searchResult+" in "+intResult.searchCount+" steps;\n "+intResult.lastSeen); intResult = intTest.contains(6); System.out.println("... 6 is in your BST? " + intResult.searchResult+" in "+intResult.searchCount+" steps;\n "+intResult.lastSeen); System.out.println("Your string BST is:\n"+strTest); System.out.println("One rotation: "+new BstRotation(3, BstRotation.RotationType.ZAG)); Loading