From 47427ae6fe97367f5013e51825d700074d65edde Mon Sep 17 00:00:00 2001 From: Arity-T Date: Mon, 3 Feb 2025 18:45:06 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9C=D0=B5=D1=82=D0=BE=D0=B4=20size=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20MyTreeSet?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/ru/spbstu/telematics/java/MyTreeSet.java | 9 +++++++++ .../java/ru/spbstu/telematics/java/AppTest.java | 13 +++++++++++++ 2 files changed, 22 insertions(+) diff --git a/lab2/src/main/java/ru/spbstu/telematics/java/MyTreeSet.java b/lab2/src/main/java/ru/spbstu/telematics/java/MyTreeSet.java index 6463891..840d7e3 100644 --- a/lab2/src/main/java/ru/spbstu/telematics/java/MyTreeSet.java +++ b/lab2/src/main/java/ru/spbstu/telematics/java/MyTreeSet.java @@ -14,9 +14,15 @@ public class MyTreeSet> { } private Node root; + private int size; public MyTreeSet() { root = null; + size = 0; + } + + public int size() { + return size; } public boolean add(E element) { @@ -26,6 +32,7 @@ public class MyTreeSet> { if (root == null) { root = new Node(element); + size++; return true; } @@ -47,6 +54,7 @@ public class MyTreeSet> { parentNode.right = newNode; } + size++; return true; } @@ -72,6 +80,7 @@ public class MyTreeSet> { } if (!contains(element)) return false; root = remove(root, element); + size--; return true; } diff --git a/lab2/src/test/java/ru/spbstu/telematics/java/AppTest.java b/lab2/src/test/java/ru/spbstu/telematics/java/AppTest.java index 7b4e555..1f6468f 100644 --- a/lab2/src/test/java/ru/spbstu/telematics/java/AppTest.java +++ b/lab2/src/test/java/ru/spbstu/telematics/java/AppTest.java @@ -58,4 +58,17 @@ class MyTreeSetTests { assertThrows(NullPointerException.class, () -> myTreeSet.remove(null)); assertThrows(NullPointerException.class, () -> treeSet.remove(null)); } + + @Test + void testSize() { + assertEquals(myTreeSet.size(), treeSet.size()); + treeSet.add(15); + myTreeSet.add(15); + assertEquals(myTreeSet.size(), treeSet.size()); + treeSet.add(50); + myTreeSet.add(50); + assertEquals(myTreeSet.size(), treeSet.size()); + assertEquals(myTreeSet.remove(50), treeSet.remove(50)); + assertEquals(myTreeSet.size(), treeSet.size()); + } }