/// <summary> /// Getting result of intersection of two multiplicity. /// </summary> /// <param name="First"></param> /// <param name="Second"></param> public void Intersection(Multiplicity <ElementType> First, Multiplicity <ElementType> Second) { this.head = null; if ((First.IsEmpty()) || (Second.IsEmpty())) { this.head = null; return; } MultiplicityElement tempFirst = First.head; MultiplicityElement tempSecond = Second.head; while (tempFirst != null) { while (tempSecond != null) { if (tempFirst.Value.Equals(tempSecond.Value)) { this.Insert(tempFirst.Value); } tempSecond = tempSecond.Next; } tempFirst = tempFirst.Next; tempSecond = Second.head; } }
static void Main(string[] args) { Multiplicity <int> Multiplicity1 = new Multiplicity <int>(); Multiplicity1.Insert(1); Multiplicity1.Insert(2); Multiplicity1.Insert(3); Multiplicity <int> Multiplicity2 = new Multiplicity <int>(); //Multiplicity2.Incert(1); //Multiplicity2.Incert(2); Multiplicity <int> Result = new Multiplicity <int>(); //Result.Intersection(Multiplicity1, Multiplicity2); Result.Union(Multiplicity1, Multiplicity2); //Multiplicity.RemovingOfElement(2); //Multiplicity.RemovingOfElement(5); //bool exCh1 = Multiplicity.ExistenceChecking(5); //if (exCh1) // System.Console.WriteLine("5 is here"); //else // System.Console.WriteLine("5 isn't here"); System.Console.WriteLine("{0}", Result.Print()); }