Select Git revision
Forked from
UNL Information Services / UNL-CMS
Source project has a limited visibility.
-
Tim Steiner authoredTim Steiner authored
multipleRemoval.test.js 25.39 KiB
import { BinarySearchTree } from './binarySearchTree.js';
describe('removal', () => {
test('ignores the repeats in removal sequence #0', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #1', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #2', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #3', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #4', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #5', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #6', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #7', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #8', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #9', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #10', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #11', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #12', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #13', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #14', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #15', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #16', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #17', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #18', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #19', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #20', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #21', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #22', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #23', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #24', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #25', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #26', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #27', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #28', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #29', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #30', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #31', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #32', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #33', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #34', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #35', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #36', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #37', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #38', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #39', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #40', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #41', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #42', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #43', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #44', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #45', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #46', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #47', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #48', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #49', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #50', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #51', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #52', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #53', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #54', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #55', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(0);
expect(tree.toList()).toEqual([2]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #56', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #57', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #58', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #59', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(1);
expect(tree.toList()).toEqual([0, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #60', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #61', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #62', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #63', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #64', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #65', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #66', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #67', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(2);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #68', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
tree.delete(2);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #69', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(2);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #70', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(0);
expect(tree.toList()).toEqual([1]);
tree.delete(1);
expect(tree.toList()).toEqual([]);
});
test('ignores the repeats in removal sequence #71', () => {
const tree = new BinarySearchTree([0, 1, 2]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(2);
expect(tree.toList()).toEqual([0, 1]);
tree.delete(1);
expect(tree.toList()).toEqual([0]);
tree.delete(0);
expect(tree.toList()).toEqual([]);
});
});