Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void remove(String fn) {
- remove(find(fn));
- }
- void remove(Node n) {
- if (n == null) return;
- if ((n.left == null) && (n.right == null)) {
- if (n == root) root = null;
- else if (n.parent.left == n) n.parent.left = null;
- else n.parent.right = null;
- } else if (n.left == null) {
- if (n == root) root = n.right;
- else if (n.parent.left == n) n.parent.left = n.right;
- else n.parent.right = n.right;
- } else if (n.right == null) {
- if (n == root) root = n.left;
- else if (n.parent.left == n) n.parent.left = n.left;
- else n.parent.right = n.left;
- } else {
- Node leftMax = findMaxR(n.left);
- n.fileName = leftMax.fileName;
- remove(leftMax);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement