Advertisement
Gillito

Untitled

Jun 16th, 2015
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.05 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace ConsoleApplication44
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             DynamicArray dynArray = new DynamicArray();
  14.  
  15.             dynArray.AddToArray(1);
  16.             dynArray.AddToArray(2);
  17.             dynArray.AddToArray(3);
  18.             dynArray.AddToArray(4);
  19.             dynArray.AddToArray(5);
  20.             dynArray.AddToArray(6);
  21.             dynArray.AddToArray(7);
  22.             dynArray.AddToArray(8);
  23.  
  24.             dynArray.ShowArray();
  25.  
  26.             dynArray.RemoveInterval(2, 4);
  27.             dynArray.ShowArray();
  28.  
  29.             //dynArray.RemoveBefore(2);
  30.             //dynArray.ShowArray();
  31.  
  32.             //dynArray.RemoveAfter(4);
  33.             //dynArray.ShowArray();
  34.         }
  35.     }
  36.  
  37.     class DynamicArray
  38.     {
  39.         private int count = 0;
  40.  
  41.         private int[] array = new int[1];
  42.  
  43.         public void AddToArray(int element)
  44.         {
  45.             if (count < array.Length)
  46.                 array[count] = element;
  47.             else
  48.             {
  49.                 int[] tempArray = new int[array.Length * 2];
  50.                 for (int i = 0; i < array.Length; i++)
  51.                     tempArray[i] = array[i];
  52.                 tempArray[count] = element;
  53.                 array = tempArray;
  54.             }
  55.             count++;
  56.         }
  57.  
  58.         public void ShowArray()
  59.         {
  60.             for (int i = 0; i < count; i++)
  61.                 Console.WriteLine(array[i]);
  62.             Console.WriteLine("array.Length " + array.Length);
  63.             Console.WriteLine("Count " + count);
  64.         }
  65.  
  66.         public int[] PublicArray()
  67.         {
  68.             int[] arrayCopy = new int[count];
  69.             for (int i = 0; i < count; i++)
  70.             {
  71.                 arrayCopy[i] = array[i];
  72.             }
  73.             return arrayCopy;
  74.         }
  75.  
  76.         public void ClearArray()
  77.         {
  78.             array = new int[1];
  79.             count = 0;
  80.         }
  81.  
  82.         public void Destroyer(int x)
  83.         {
  84.             for (; x + 1 < count; x++)
  85.                 array[x] = array[x + 1];
  86.             count--;
  87.         }
  88.  
  89.         public void Raverse()
  90.         {
  91.             for (int i = 0; i < count / 2; i++)
  92.             {
  93.                 int x = array[i];
  94.                 array[i] = array[count - 1 - i];
  95.                 array[count - 1 - i] = x;
  96.             }
  97.         }
  98.  
  99.         public void RemoveBefore(int x)
  100.         {
  101.             for (int i = 0; i < count - x; i++)
  102.                 array[i] = array[x + i];
  103.             count -= x;
  104.         }
  105.  
  106.         public void RemoveAfter(int x)
  107.         {
  108.             count = x;
  109.         }
  110.  
  111.         public void RemoveInterval(int startIndex, int endIndex)
  112.         {
  113.             int interval = endIndex - startIndex;
  114.  
  115.             for (int i = 0; i < count - startIndex; i++)
  116.             {
  117.                 array[startIndex + i] = array[endIndex + i];
  118.             }
  119.             count -= startIndex;
  120.         }
  121.     }
  122. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement