findMin
e findMax
. Esses métodos devem retornar os valores mínimo e máximo mantidos na árvore de pesquisa binária (não se preocupe em adicionar valores à árvore por enquanto, adicionamos alguns em segundo plano). Se você ficar preso, reflita sobre a invariante que deve ser verdadeira para árvores de busca binária: cada subárvore esquerda é menor ou igual a seu pai e cada subárvore direita é maior que ou igual a seu pai. Digamos também que nossa árvore só pode armazenar valores inteiros. Se a árvore estiver vazia, o método deve retornar null
. BinarySearchTree
existe.
testString: 'assert((function() { var test = false; if (typeof BinarySearchTree !== "undefined") { test = new BinarySearchTree() }; return (typeof test == "object")})(), "The BinarySearchTree
data structure exists.");'
- text: A árvore de pesquisa binária tem um método chamado findMin
.
testString: 'assert((function() { var test = false; if (typeof BinarySearchTree !== "undefined") { test = new BinarySearchTree() } else { return false; }; return (typeof test.findMin == "function")})(), "The binary search tree has a method called findMin
.");'
- text: A árvore de pesquisa binária tem um método chamado findMax
.
testString: 'assert((function() { var test = false; if (typeof BinarySearchTree !== "undefined") { test = new BinarySearchTree() } else { return false; }; return (typeof test.findMax == "function")})(), "The binary search tree has a method called findMax
.");'
- text: O método findMin
retorna o valor mínimo na árvore de pesquisa binária.
testString: 'assert((function() { var test = false; if (typeof BinarySearchTree !== "undefined") { test = new BinarySearchTree() } else { return false; }; if (typeof test.findMin !== "function") { return false; }; test.add(4); test.add(1); test.add(7); test.add(87); test.add(34); test.add(45); test.add(73); test.add(8); return test.findMin() == 1; })(), "The findMin
method returns the minimum value in the binary search tree.");'
- text: O método findMax
retorna o valor máximo na árvore de pesquisa binária.
testString: 'assert((function() { var test = false; if (typeof BinarySearchTree !== "undefined") { test = new BinarySearchTree() } else { return false; }; if (typeof test.findMax !== "function") { return false; }; test.add(4); test.add(1); test.add(7); test.add(87); test.add(34); test.add(45); test.add(73); test.add(8); return test.findMax() == 87; })(), "The findMax
method returns the maximum value in the binary search tree.");'
- text: Os findMin
e findMax
métodos retornam null
para uma árvore vazia.
testString: 'assert((function() { var test = false; if (typeof BinarySearchTree !== "undefined") { test = new BinarySearchTree() } else { return false; }; if (typeof test.findMin !== "function") { return false; }; if (typeof test.findMax !== "function") { return false; }; return (test.findMin() == null && test.findMax() == null) })(), "The findMin
and findMax
methods return null
for an empty tree.");'
```