private void deleteEdgeButton_Click(object sender, EventArgs e) { if (listOfEgdes.SelectedIndex >= 0) { string selectedEdge = listOfEgdes.SelectedItem.ToString(); listOfEgdes.Items.RemoveAt(listOfEgdes.SelectedIndex); int index = selectedEdge.IndexOf("<"); string eFrom = selectedEdge.Substring(0, index); index = selectedEdge.IndexOf(">"); string eTo = selectedEdge.Substring(index + 1); graph.DeleteEdge(Int32.Parse(eFrom), Int32.Parse(eTo)); } }
public void UndirectedGraphAddEdgeAndDeleteEdge() { Graph graph = new MatrixGraph(10, false); graph.AddEdge(0, 9, 10); graph.AddEdge(2, 0, 5); Assert.Equal(2, graph.GetOutDegree(0)); Assert.Equal(2, graph.GetInDegree(0)); Assert.Equal(2, graph.EdgesCount); graph.DeleteEdge(0, 9); Assert.Equal(1, graph.GetOutDegree(0)); Assert.Equal(1, graph.GetInDegree(0)); Assert.Equal(1, graph.EdgesCount); }