예제 #1
0
        static void Main(string[] args)
        {
            //List<int> people = new List<int>();

            //AddPeople(10, people);
            //Console.WriteLine("Before removing: ");
            //PrintList(people);
            //RemovePeople(people);


            //WordFrequency("Вот дом, Который построил Джек. " +
            //    "А это пшеница, Которая в тёмном чулане хранится " +
            //    "В доме, Который построил Джек. А это весёлая птица-синица, " +
            //    "Которая часто ворует пшеницу, Которая в тёмном чулане хранится " +
            //    "В доме, Который построил Джек. Вот кот, Который пугает и ловит синицу, " +
            //    "Которая часто ворует пшеницу, Которая в тёмном чулане хранится");


            //CycledDynamicArray<int> cycle = new CycledDynamicArray<int>(new int[] { 1, 2, 3, 4, 5});

            //foreach (var item in cycle)
            //{
            //    Console.WriteLine(item);
            //}

            DynamicArray <string> dyn = new DynamicArray <string>();

            Console.WriteLine(dyn.Insert(1, null));

            Console.ReadKey();
        }
예제 #2
0
        void Part7()
        {
            var capacity = myArray.Capacity;

            myArray.Insert(7, "999");
            capacity = myArray.Capacity;
        }
예제 #3
0
        public void insertElem()
        {
            DynamicArray<int> arr = new DynamicArray<int>(3);
            arr.Add(1);
            arr.Add(2);
            arr.Insert(1, 5);
            int[] array = new int[] { 5, 1, 2 };

            NUnit.Framework.Assert.AreEqual(arr[1], array[1]);
        }
예제 #4
0
        public static void Main(string[] args)
        {
            // condition 1
            DynamicArray <string> dynamicArray = new DynamicArray <string>();

            Console.WriteLine($"при создании конструктора без параметров Capacity = {dynamicArray.Capacity}");
            Console.WriteLine($"при создании конструктора без параметров Length = {dynamicArray.Length}");
            Console.WriteLine();

            // condition 2
            dynamicArray = new DynamicArray <string>(5);
            Console.WriteLine($"при создании конструктора с одним целочисленным параметром Capacity(5) = {dynamicArray.Capacity}");
            Console.WriteLine($"при создании конструктора с одним целочисленным параметром Length = {dynamicArray.Length}");
            Console.WriteLine();

            // condition 3
            List <string> list = new List <string>();

            list.Add("A");
            list.Add("B");
            list.Add("C");
            list.Add("D");
            list.Add("E");
            list.Add("F");
            dynamicArray = new DynamicArray <string>(list);
            Console.WriteLine($"при создании конструктора с коллекцией размером {list.Count} Capacity = {dynamicArray.Capacity}");
            Console.WriteLine($"при создании конструктора с коллекцией размером {list.Count} Length = {dynamicArray.Length}");
            ShowDynamicArray(dynamicArray);
            Console.WriteLine();

            // condition 4
            dynamicArray.Add("G");
            Console.WriteLine($"при добавления элемента в конец Capacity = {dynamicArray.Capacity}");
            Console.WriteLine($"при добавления элемента в конец Length = {dynamicArray.Length}");
            ShowDynamicArray(dynamicArray);
            Console.WriteLine();

            // condition 5
            list = new List <string>();
            list.Add("H");
            list.Add("I");
            list.Add("J");
            list.Add("K");
            list.Add("L");
            list.Add("M");
            dynamicArray.AddRange(list);
            Console.WriteLine($"при добавления коллекции размером {list.Count} в конец Capacity = {dynamicArray.Capacity}");
            Console.WriteLine($"при добавления коллекции размером {list.Count} в конец Length = {dynamicArray.Length}");
            ShowDynamicArray(dynamicArray);
            Console.WriteLine();

            // condiotion 6
            Console.WriteLine("попытка удаления G первый раз {0}", dynamicArray.Remove("G"));
            Console.WriteLine($"при удалении элемента G Capacity = {dynamicArray.Capacity}");
            Console.WriteLine($"при удалении элемента G Length = {dynamicArray.Length}");
            ShowDynamicArray(dynamicArray);
            Console.WriteLine("попытка удаления G второй раз {0}", dynamicArray.Remove("G"));
            Console.WriteLine();

            // condition 7
            dynamicArray.Insert(7, "G");
            Console.WriteLine($"при добавления элемента на позицию 7 Capacity = {dynamicArray.Capacity}");
            Console.WriteLine($"при добавления элемента на позицию 7 Length = {dynamicArray.Length}");
            ShowDynamicArray(dynamicArray);
            // ArgumentOutOfRangeException
            // dynamicArray.Insert(14,"G");
            Console.WriteLine();

            // condition 11
            Console.WriteLine($"Вывод нулевого элемента: {dynamicArray[0]}");

            // condition 1
            Console.WriteLine($"Вывод -1 элемента: {dynamicArray[-1]}");

            // condition 2
            dynamicArray.Capacity = 10;
            Console.WriteLine($"при изменении Capacity на 10 Capacity = {dynamicArray.Capacity}");
            Console.WriteLine($"при изменении Capacity на 10 Length = {dynamicArray.Length}");
            ShowDynamicArray(dynamicArray);
            Console.WriteLine();

            // condition 3
            Console.WriteLine("Создание Clone");
            DynamicArray <string> cloneDynamicArray = (DynamicArray <string>)dynamicArray.Clone();

            Console.WriteLine($"Capacity Clone = {cloneDynamicArray.Capacity}");
            Console.WriteLine($"Length Clone = {cloneDynamicArray.Length}");
            ShowDynamicArray(cloneDynamicArray);
            Console.WriteLine();

            // condition 4
            string[] toArray = dynamicArray.ToArray();
            Console.WriteLine("ToArray:");
            foreach (var item in toArray)
            {
                Console.Write($"{item} ");
            }

            Console.WriteLine();
            Console.WriteLine();

            CycledDynamicArray <int> cycledDynamic = new CycledDynamicArray <int>()
            {
                1, 2, 3, 4
            };

            Console.WriteLine("CycledDynamicArray:");
            int count = 10;

            foreach (var item in cycledDynamic)
            {
                Console.Write(item + " ");
                count--;
                if (count == 0)
                {
                    break;
                }
            }
        }
예제 #5
0
        public void IncorrectIndexInsertTest()
        {
            int n = 5;
            try
            {
                DynamicArray<int> data = new DynamicArray<int>(n);
                for (int i = 0; i < n - 1; i++)
                {
                    data.Add(i);
                }
                data.Insert(4, 10);
            }
            catch (Exception e)
            {
                StringAssert.Contains(e.Message, "Индекс превышает длину массива");
                return;
            }
            Assert.Fail("Не было ни одного исключения");

        }
예제 #6
0
        public void InsertTest()
        {
            DynamicArray<int> data = new DynamicArray<int>();
            for (int i = 0; i < 7; i++)
            {
                data.Add(i);
            }
            data.Insert(4, 1);

            Assert.AreEqual(data.Capacity, 8);
            Assert.AreEqual(data.Length, 8);
            Assert.AreEqual(data[1], 4);
            Assert.AreEqual(data[7], 6);

        }
예제 #7
0
        static void Main(string[] args)
        {
            List <int> lost = new List <int> {
                1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
            };

            Task3_1_2 <int> .Lost(lost);

            Console.WriteLine();
            Task3_1_2 <string> .WordFreqeuncy("Anyone who reads Old and Middle English literary texts will be familiar with the mid-brown volumes of the EETS, with the symbol of Alfred's jewel embossed on the front cover. Most of the works attributed to King Alfred or to Aelfric, along with some of those by bishop Wulfstan and much anonymous prose and verse from the pre-Conquest period, are to be found within the Society's three series; all of the surviving medieval drama, most of the Middle English romances, much religious and secular prose and verse including the English works of John Gower, Thomas Hoccleve and most of Caxton's prints all find their place in the publications. Without EETS editions, study of medieval English texts would hardly be possible.");

            Console.WriteLine("Задание DynamicArray");
            int[] s = { 0, 1, 2, 3, 4, 5, 6, 7 };
            DynamicArray <int> my = new DynamicArray <int>(s);

            Console.Write("Первоначальный массив ");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива " + my.Length);
            Console.WriteLine("Емкость массива " + my.Capacity);
            Console.WriteLine("Обращение по индексу 3, значение равно " + my[3]);
            Console.WriteLine("Обращение по индексу -3, значение равно " + my[-3]);
            my.Add(8);
            Console.Write("Массив после добавления элемента ");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива после добавления элемента " + my.Length);
            Console.WriteLine("Емкость массива после добавления элемента " + my.Capacity);
            Console.Write("Массив после удаления элемента " + my.Remove(5) + ":");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива после удаления элемента " + my.Length);
            Console.WriteLine("Емкость массива после удаления элемента " + my.Capacity);
            Console.Write("Массив после вставки элемента " + my.Insert(5, 5) + ":");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива после вставки элемента " + my.Length);
            Console.WriteLine("Емкость массива после вставки элемента " + my.Capacity);
            my.AddRange(new DynamicArray <int> {
                9, 10, 11, 12, 13, 14, 15, 16
            });
            Console.Write("Массив после добавления коллекции ");
            foreach (int i in my)
            {
                Console.Write(i);
            }
            Console.WriteLine();
            Console.WriteLine("Длина массива после добавления коллекции " + my.Length);
            Console.WriteLine("Емкость массива после добавления коллекции " + my.Capacity);
        }