Exemple #1
0
        public static void Main(String[] args)
        {
            var X = "INTENTION"; var n = X.Length;
            var Y = "EXECUTION"; var m = Y.Length;

            // Edit distance between X and Y is thus D(n,m);

            //var LSD1 = new Levenshtein(X, Y);
            //LSD1.CalculateMinimumEditDistance();
            //Console.WriteLine(LSD1);

            //var LSD2 = new Levenshtein("comb", "love");
            //LSD2.CalculateMinimumEditDistance();
            //Console.WriteLine(LSD2);

            //var LSD3 = new Levenshtein("bike", "back");
            //LSD3.CalculateMinimumEditDistance();
            //Console.WriteLine(LSD3);

            var LSD4 = NeedlemanWunsch.Create("ACGTC", "AGTC");
            LSD4.CalculateMinimumEditDistance();
            Console.WriteLine(LSD4);

            var LSD5 = NeedlemanWunsch.Create("ATC", "AATC", 1, (c1, c2) => { return (c1 == c2) ? 0 : -2; });
            LSD5.CalculateMinimumEditDistance();
            Console.WriteLine(LSD5);

            var LSD6 = new Levenshtein("ATCAT", "ATTATC",
                                       MatrixInitWordA:      (character, position) => 0,
                                       MatrixInitWordB:      (character, position) => 0,
                                       InsertionCostFunc:    (character) => -1,
                                       DeletionCostFunc:     (character) => -1,
                                       SubstitutionCostFunc: (c1, c2) => { return (c1 == c2) ? 1 : -1; },
                                       BorderCosts:          0,
                                       LevenshteinGoal:      Levenshtein.LevenshteinGoals.Maximize);

            LSD6.CalculateMinimumEditDistance();
            Console.WriteLine(LSD6);

            Console.WriteLine(Levenshtein.CreateAndCalc("bane", "barn"));
            Console.WriteLine(Levenshtein.CreateAndCalc("vase", "cave"));

            var _TA = new GlypheGraph();
            _TA.ReadFile("TestText.txt");
        }
Exemple #2
0
 /// <summary>
 /// Setup a Levenshtein matrix for the given words.
 /// </summary>
 /// <param name="WordA">The first word.</param>
 /// <param name="WordB">The second word.</param>
 public static Levenshtein CreateAndCalc(String WordA, String WordB)
 {
     var _Levenshtein = new Levenshtein(WordA, WordB);
     _Levenshtein.CalculateMinimumEditDistance();
     return _Levenshtein;
 }