public void MatrixFiveModern() { WeightedGraphMatrix <string> graph = new WeightedGraphMatrix <string>(true, 5); PeakCodes peakCodes = new PeakCodes() { 'a', 'b', 'c', 'd', 'e' }; graph.AddArc(peakCodes['a'], peakCodes['b'], "a"); graph.AddArc(peakCodes['b'], peakCodes['c'], "b"); graph.AddArc(peakCodes['c'], peakCodes['d'], "c"); graph.AddArc(peakCodes['d'], peakCodes['e'], "d"); graph.AddArc(peakCodes['e'], peakCodes['a'], "e"); graph.RemovePeak(peakCodes['c']); peakCodes.Remove('c'); Assert.AreEqual(4, graph.PeakCount); Assert.AreEqual("a", graph.GetWeight(peakCodes['a'], peakCodes['b'])); Assert.IsFalse(graph.ContainsArc(peakCodes['b'], peakCodes['a'])); Assert.AreEqual("d", graph.GetWeight(peakCodes['d'], peakCodes['e'])); Assert.IsFalse(graph.ContainsArc(peakCodes['e'], peakCodes['d'])); Assert.AreEqual("e", graph.GetWeight(peakCodes['e'], peakCodes['a'])); Assert.IsFalse(graph.ContainsArc(peakCodes['a'], peakCodes['e'])); Assert.IsTrue(graph.ContainsArc(peakCodes['d'], peakCodes['e'])); Assert.IsTrue(graph.ContainsArc(peakCodes['e'], peakCodes['a'])); Assert.IsFalse(graph.ContainsArc(peakCodes['a'], peakCodes['d'])); Assert.IsFalse(graph.ContainsArc(peakCodes['b'], peakCodes['d'])); Assert.IsFalse(graph.ContainsArc(peakCodes['b'], peakCodes['a'])); Assert.IsFalse(graph.ContainsArc(peakCodes['e'], peakCodes['d'])); Assert.IsFalse(graph.ContainsArc(peakCodes['a'], peakCodes['e'])); Assert.IsFalse(graph.ContainsArc(peakCodes['d'], peakCodes['a'])); Assert.IsFalse(graph.ContainsArc(peakCodes['d'], peakCodes['b'])); Assert.IsFalse(graph.ContainsArc(peakCodes['b'], peakCodes['e'])); Assert.IsFalse(graph.ContainsArc(peakCodes['e'], peakCodes['b'])); graph.RemovePeak(peakCodes['e']); peakCodes.Remove('e'); Assert.AreEqual(3, graph.PeakCount); Assert.AreEqual("a", graph.GetWeight(peakCodes['a'], peakCodes['b'])); Assert.IsFalse(graph.ContainsArc(peakCodes['b'], peakCodes['a'])); Assert.IsTrue(graph.ContainsArc(peakCodes['a'], peakCodes['b'])); Assert.IsFalse(graph.ContainsArc(peakCodes['a'], peakCodes['d'])); Assert.IsFalse(graph.ContainsArc(peakCodes['b'], peakCodes['d'])); Assert.IsFalse(graph.ContainsArc(peakCodes['b'], peakCodes['a'])); // ??? - ошибка Assert.IsFalse(graph.ContainsArc(peakCodes['d'], peakCodes['a'])); Assert.IsFalse(graph.ContainsArc(peakCodes['d'], peakCodes['b'])); }
public void SevenElFromMiddleCorrect() { UnweightedGraphList graph = new UnweightedGraphList(true); graph.AddPeak(); graph.AddPeak(); graph.AddPeak(); graph.AddPeak(); graph.AddPeak(); graph.AddPeak(); graph.AddPeak(); PeakCodes peakCounts = new PeakCodes() { 'a', 'b', 'c', 'd', 'e', 'f', 'g' }; //Необходимость сортировки graph.AddArc(peakCounts['g'], peakCounts['f']); graph.AddArc(peakCounts['g'], peakCounts['e']); graph.AddArc(peakCounts['a'], peakCounts['b']); graph.AddArc(peakCounts['b'], peakCounts['c']); graph.AddArc(peakCounts['c'], peakCounts['b']); graph.AddArc(peakCounts['a'], peakCounts['d']); graph.AddArc(peakCounts['d'], peakCounts['b']); graph.AddArc(peakCounts['c'], peakCounts['d']); graph.AddArc(peakCounts['d'], peakCounts['c']); graph.AddArc(peakCounts['e'], peakCounts['f']); graph.AddArc(peakCounts['f'], peakCounts['e']); graph.AddArc(peakCounts['e'], peakCounts['d']); graph.AddArc(peakCounts['d'], peakCounts['e']); graph.AddArc(peakCounts['d'], peakCounts['f']); graph.AddArc(peakCounts['g'], peakCounts['d']); graph.AddArc(peakCounts['a'], peakCounts['e']); graph.AddArc(peakCounts['f'], peakCounts['b']); graph.AddArc(peakCounts['c'], peakCounts['g']); graph.AddArc(peakCounts['g'], peakCounts['c']); graph.RemovePeak(peakCounts['d']); peakCounts.Remove('d'); Assert.IsTrue(graph.ContainsArc(peakCounts['a'], peakCounts['b'])); Assert.IsFalse(graph.ContainsArc(peakCounts['a'], peakCounts['c'])); Assert.IsTrue(graph.ContainsArc(peakCounts['a'], peakCounts['e'])); Assert.IsFalse(graph.ContainsArc(peakCounts['a'], peakCounts['f'])); Assert.IsFalse(graph.ContainsArc(peakCounts['a'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['b'], peakCounts['a'])); Assert.IsTrue(graph.ContainsArc(peakCounts['b'], peakCounts['c'])); Assert.IsFalse(graph.ContainsArc(peakCounts['b'], peakCounts['e'])); Assert.IsFalse(graph.ContainsArc(peakCounts['b'], peakCounts['f'])); Assert.IsFalse(graph.ContainsArc(peakCounts['b'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['c'], peakCounts['a'])); Assert.IsTrue(graph.ContainsArc(peakCounts['c'], peakCounts['b'])); Assert.IsFalse(graph.ContainsArc(peakCounts['c'], peakCounts['e'])); Assert.IsFalse(graph.ContainsArc(peakCounts['c'], peakCounts['f'])); Assert.IsTrue(graph.ContainsArc(peakCounts['c'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['e'], peakCounts['a'])); Assert.IsFalse(graph.ContainsArc(peakCounts['e'], peakCounts['c'])); Assert.IsFalse(graph.ContainsArc(peakCounts['e'], peakCounts['b'])); Assert.IsTrue(graph.ContainsArc(peakCounts['e'], peakCounts['f'])); Assert.IsFalse(graph.ContainsArc(peakCounts['e'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['f'], peakCounts['a'])); Assert.IsFalse(graph.ContainsArc(peakCounts['f'], peakCounts['c'])); Assert.IsTrue(graph.ContainsArc(peakCounts['f'], peakCounts['e'])); Assert.IsTrue(graph.ContainsArc(peakCounts['f'], peakCounts['b'])); Assert.IsFalse(graph.ContainsArc(peakCounts['f'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['g'], peakCounts['a'])); Assert.IsTrue(graph.ContainsArc(peakCounts['g'], peakCounts['c'])); Assert.IsTrue(graph.ContainsArc(peakCounts['g'], peakCounts['e'])); Assert.IsTrue(graph.ContainsArc(peakCounts['g'], peakCounts['f'])); Assert.IsFalse(graph.ContainsArc(peakCounts['g'], peakCounts['b'])); }
public void SquareMatrixSeven() { UnweightedGraphMatrix graph = new UnweightedGraphMatrix(true, 7); PeakCodes peakCounts = new PeakCodes() { 'a', 'b', 'c', 'd', 'e', 'f', 'g' }; //Необходимость сортировки graph.AddArc(peakCounts['g'], peakCounts['f']); graph.AddArc(peakCounts['g'], peakCounts['e']); graph.AddArc(peakCounts['a'], peakCounts['b']); graph.AddArc(peakCounts['b'], peakCounts['c']); graph.AddArc(peakCounts['c'], peakCounts['b']); graph.AddArc(peakCounts['a'], peakCounts['d']); graph.AddArc(peakCounts['d'], peakCounts['b']); graph.AddArc(peakCounts['c'], peakCounts['d']); graph.AddArc(peakCounts['d'], peakCounts['c']); graph.AddArc(peakCounts['e'], peakCounts['f']); graph.AddArc(peakCounts['f'], peakCounts['e']); graph.AddArc(peakCounts['e'], peakCounts['d']); graph.AddArc(peakCounts['d'], peakCounts['e']); graph.AddArc(peakCounts['d'], peakCounts['f']); graph.AddArc(peakCounts['g'], peakCounts['d']); graph.AddArc(peakCounts['a'], peakCounts['e']); graph.AddArc(peakCounts['f'], peakCounts['b']); graph.AddArc(peakCounts['c'], peakCounts['g']); graph.AddArc(peakCounts['g'], peakCounts['c']); graph.RemovePeak(peakCounts['d']); peakCounts.Remove('d'); Assert.IsTrue(graph.ContainsArc(peakCounts['a'], peakCounts['b'])); Assert.IsFalse(graph.ContainsArc(peakCounts['a'], peakCounts['c'])); Assert.IsTrue(graph.ContainsArc(peakCounts['a'], peakCounts['e'])); Assert.IsFalse(graph.ContainsArc(peakCounts['a'], peakCounts['f'])); Assert.IsFalse(graph.ContainsArc(peakCounts['a'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['b'], peakCounts['a'])); Assert.IsTrue(graph.ContainsArc(peakCounts['b'], peakCounts['c'])); Assert.IsFalse(graph.ContainsArc(peakCounts['b'], peakCounts['e'])); Assert.IsFalse(graph.ContainsArc(peakCounts['b'], peakCounts['f'])); Assert.IsFalse(graph.ContainsArc(peakCounts['b'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['c'], peakCounts['a'])); Assert.IsTrue(graph.ContainsArc(peakCounts['c'], peakCounts['b'])); Assert.IsFalse(graph.ContainsArc(peakCounts['c'], peakCounts['e'])); Assert.IsFalse(graph.ContainsArc(peakCounts['c'], peakCounts['f'])); Assert.IsTrue(graph.ContainsArc(peakCounts['c'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['e'], peakCounts['a'])); Assert.IsFalse(graph.ContainsArc(peakCounts['e'], peakCounts['c'])); Assert.IsFalse(graph.ContainsArc(peakCounts['e'], peakCounts['b'])); Assert.IsTrue(graph.ContainsArc(peakCounts['e'], peakCounts['f'])); Assert.IsFalse(graph.ContainsArc(peakCounts['e'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['f'], peakCounts['a'])); Assert.IsFalse(graph.ContainsArc(peakCounts['f'], peakCounts['c'])); Assert.IsTrue(graph.ContainsArc(peakCounts['f'], peakCounts['e'])); Assert.IsTrue(graph.ContainsArc(peakCounts['f'], peakCounts['b'])); Assert.IsFalse(graph.ContainsArc(peakCounts['f'], peakCounts['g'])); Assert.IsFalse(graph.ContainsArc(peakCounts['g'], peakCounts['a'])); Assert.IsTrue(graph.ContainsArc(peakCounts['g'], peakCounts['c'])); Assert.IsTrue(graph.ContainsArc(peakCounts['g'], peakCounts['e'])); Assert.IsTrue(graph.ContainsArc(peakCounts['g'], peakCounts['f'])); Assert.IsFalse(graph.ContainsArc(peakCounts['g'], peakCounts['b'])); }