Skip to content

Commit 863dbdb

Browse files
committed
Fix issue trekhleb#98.
1 parent fafa52c commit 863dbdb

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

src/data-structures/tree/binary-search-tree/BinarySearchTreeNode.js

+3
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,9 @@ export default class BinarySearchTreeNode extends BinaryTreeNode {
132132
}
133133
}
134134

135+
// Clear the parent of removed node.
136+
nodeToRemove.parent = null;
137+
135138
return true;
136139
}
137140

src/data-structures/tree/binary-search-tree/__test__/BinarySearchTreeNode.test.js

+9
Original file line numberDiff line numberDiff line change
@@ -243,4 +243,13 @@ describe('BinarySearchTreeNode', () => {
243243

244244
expect(bstNode.findMin().value).toEqual(obj1);
245245
});
246+
247+
it('should abandon removed node', () => {
248+
const rootNode = new BinarySearchTreeNode('foo');
249+
rootNode.insert('bar');
250+
const childNode = rootNode.find('bar');
251+
rootNode.remove('bar');
252+
253+
expect(childNode.parent).toBeNull();
254+
});
246255
});

0 commit comments

Comments
 (0)