Improved Combinations with the BigInteger Data Type: Listing 1.
Structure of the Combinatorics program.
using System;
using System.Numerics;
namespace Combinatorics
{
class CombinatoricsProgram
{
static void Main(string[] args)
{
Console.WriteLine("\nBegin combinations with C# BigInteger demo\n");
// calling code here
Console.WriteLine("\nEnd demo\n");
Console.ReadLine();
}
}
public class Combination
{
private int n;
private int k;
private int[] data;
public Combination(int n, int k) { ... }
public override string ToString() { ... }
public Combination Successor() { ... }
public static BigInteger Choose(int n, int k) { ... }
public Combination Element(BigInteger m) { ... }
private static int LargestV(int a, int b, BigInteger x) { ... }
public string[] ApplyTo(string[] a) { ... }
} // class Combination
} // ns
About the Author
Dr. James McCaffrey works for Microsoft Research in Redmond, Wash. He has worked on several Microsoft products including Azure and Bing. James can be reached at [email protected].