mirror of
https://github.com/trekhleb/javascript-algorithms.git
synced 2026-03-13 08:51:02 +08:00
Add binary search tree.
This commit is contained in:
@@ -1,5 +1,34 @@
|
||||
import BinarySearchTree from '../BinarySearchTree';
|
||||
|
||||
describe('BinarySearchTree', () => {
|
||||
it('should create binary search tree', () => {
|
||||
const bst = new BinarySearchTree();
|
||||
|
||||
expect(bst).toBeDefined();
|
||||
expect(bst.root).toBeDefined();
|
||||
expect(bst.root.value).toBeNull();
|
||||
expect(bst.root.left).toBeNull();
|
||||
expect(bst.root.right).toBeNull();
|
||||
});
|
||||
|
||||
it('should insert values', () => {
|
||||
const bst = new BinarySearchTree();
|
||||
|
||||
bst.insert(10);
|
||||
bst.insert(20);
|
||||
bst.insert(5);
|
||||
|
||||
expect(bst.toString()).toBe('5,10,20');
|
||||
});
|
||||
|
||||
it('should check if value exists', () => {
|
||||
const bst = new BinarySearchTree();
|
||||
|
||||
bst.insert(10);
|
||||
bst.insert(20);
|
||||
bst.insert(5);
|
||||
|
||||
expect(bst.contains(20)).toBeTruthy();
|
||||
expect(bst.contains(40)).toBeFalsy();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user