📄 abstractset.cs
字号:
namespace Opus6
{
using System;
[Version("$Id: AbstractSet.cs,v 1.5 2001/10/28 19:50:09 brpreiss Exp $"), Copyright("Copyright (c) 2001 by Bruno R. Preiss, P.Eng.")]
public abstract class AbstractSet : AbstractSearchableContainer
{
public AbstractSet(int universeSize)
{
this.universeSize = universeSize;
}
public override ComparableObject Find(ComparableObject obj)
{
throw new InvalidOperationException();
}
public override void Insert(ComparableObject obj)
{
this.Insert((int) obj);
}
public abstract void Insert(int i);
public override bool IsMember(ComparableObject obj)
{
return this.IsMember((int) obj);
}
public abstract bool IsMember(int i);
public static void TestMultiset(Multiset s1, Multiset s2, Multiset s3)
{
for (int num1 = 0; num1 < 4; num1++)
{
s1.Insert((ComparableObject) num1);
}
for (int num2 = 2; num2 < 6; num2++)
{
s2.Insert((ComparableObject) num2);
}
for (int num3 = 0; num3 < 4; num3 += 2)
{
s3.Insert((ComparableObject) num3);
}
Opus6.Console.WriteLine(s1);
Opus6.Console.WriteLine(s2);
Opus6.Console.WriteLine(s3);
Opus6.Console.WriteLine(s1.Union(s2));
Opus6.Console.WriteLine(s1.Intersection(s3));
Opus6.Console.WriteLine(s1.Difference(s3));
Opus6.Console.WriteLine("Using enumeration: ");
foreach (int num4 in s3)
{
Opus6.Console.Write("{0} ", num4);
}
Opus6.Console.WriteLine();
}
public static void TestSet(Set s1, Set s2, Set s3)
{
for (int num1 = 0; num1 < 4; num1++)
{
s1.Insert((ComparableObject) num1);
}
for (int num2 = 2; num2 < 6; num2++)
{
s2.Insert((ComparableObject) num2);
}
for (int num3 = 0; num3 < 4; num3 += 2)
{
s3.Insert((ComparableObject) num3);
}
Opus6.Console.WriteLine(s1);
Opus6.Console.WriteLine(s2);
Opus6.Console.WriteLine(s3);
Opus6.Console.WriteLine(s1.Union(s2));
Opus6.Console.WriteLine(s1.Intersection(s3));
Opus6.Console.WriteLine(s1.Difference(s3));
Opus6.Console.WriteLine("Using enumeration: ");
foreach (int num4 in s3)
{
Opus6.Console.Write("{0} ", num4);
}
Opus6.Console.WriteLine();
}
public override void Withdraw(ComparableObject obj)
{
this.Withdraw((int) obj);
}
public abstract void Withdraw(int i);
public virtual int UniverseSize
{
get
{
return this.universeSize;
}
}
protected int universeSize;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -