예제 #1
0
        public void Can_insert_and_remove_item_in_set()
        {
            var set = new RandomizedSet();

            set.Insert(1);

            Assert.True(set.Remove(1));
        }
예제 #2
0
        public void Can_get_random_item_in_uniform_way()
        {
            var setOfTenThousandItems = new RandomizedSet();

            foreach (var i in Enumerable.Range(0, 10_000))
            {
                _ = setOfTenThousandItems.Insert(i);
            }

            var averageOfFiveThousandRemovals = Enumerable.Range(0, 5_000)
                                                .Select(s => setOfTenThousandItems.GetRandom())
                                                .Average();

            Assert.AreEqual(5_000d, averageOfFiveThousandRemovals, 100);
        }
예제 #3
0
 public void Can_init_set() => _ = new RandomizedSet();