@@ -84,8 +84,8 @@ static void test() {
84
84
// Test case with floating values
85
85
std::cout << " \n Test Case 2 :\n " ;
86
86
std::array<std::array<float , 3 >, 3 > graph2{
87
- 0 .0f , 2 .5f , INFINITY_FLOAT,
88
- 2 .5f , 0 .0f , 3 .2f ,
87
+ 0 .0f , 2 .5f , INFINITY_FLOAT,
88
+ 2 .5f , 0 .0f , 3 .2f ,
89
89
INFINITY_FLOAT, 3 .2f , 0 .0f };
90
90
greedy_algorithms::findMinimumEdge (INFINITY_FLOAT, graph2);
91
91
@@ -101,64 +101,64 @@ static void test() {
101
101
102
102
// Test Case with negative weights
103
103
std::cout << " \n Test Case 4 :\n " ;
104
- std::array<std::array<int , 3 >, 3 > graph_neg{0 , -2 , 4 , -2 , 0 , 3 , 4 , 3 , 0 };
104
+ std::array<std::array<int , 3 >, 3 > graph_neg{
105
+ 0 , -2 , 4 ,
106
+ -2 , 0 , 3 ,
107
+ 4 , 3 , 0 };
105
108
greedy_algorithms::findMinimumEdge (INFINITY_INT, graph_neg);
106
109
107
110
// Test Case with Self-Loops
108
111
std::cout << " \n Test Case 5 :\n " ;
109
112
std::array<std::array<int , 3 >, 3 > graph_self_loop{
110
- 2 , 1 , INFINITY_INT, INFINITY_INT, 0 , 4 , INFINITY_INT, 4 , 0 };
113
+ 2 , 1 , INFINITY_INT,
114
+ INFINITY_INT, 0 , 4 ,
115
+ INFINITY_INT, 4 , 0 };
111
116
greedy_algorithms::findMinimumEdge (INFINITY_INT, graph_self_loop);
112
117
113
118
// Test Case with no edges
114
119
std::cout << " \n Test Case 6 :\n " ;
115
120
std::array<std::array<int , 4 >, 4 > no_edges{
116
- 0 , INFINITY_INT, INFINITY_INT, INFINITY_INT, INFINITY_INT,
117
- 0 , INFINITY_INT, INFINITY_INT , INFINITY_INT, INFINITY_INT,
118
- 0 , INFINITY_INT, INFINITY_INT, INFINITY_INT , INFINITY_INT,
119
- 0 };
121
+ 0 , INFINITY_INT, INFINITY_INT, INFINITY_INT,
122
+ INFINITY_INT, 0 , INFINITY_INT, INFINITY_INT,
123
+ INFINITY_INT, INFINITY_INT, 0 , INFINITY_INT,
124
+ INFINITY_INT, INFINITY_INT, INFINITY_INT, 0 };
120
125
greedy_algorithms::findMinimumEdge (INFINITY_INT, no_edges);
121
126
122
127
// Test Case with a non-connected graph
123
128
std::cout << " \n Test Case 7:\n " ;
124
129
std::array<std::array<int , 4 >, 4 > partial_graph{
125
- 0 , 2 , INFINITY_INT, 6 , 2 , 0 , 3 , INFINITY_INT, INFINITY_INT, 3 , 0 ,
126
- 4 , 6 , INFINITY_INT, 4 , 0 };
130
+ 0 , 2 , INFINITY_INT, 6 ,
131
+ 2 , 0 , 3 , INFINITY_INT,
132
+ INFINITY_INT, 3 , 0 , 4 ,
133
+ 6 , INFINITY_INT, 4 , 0 };
127
134
greedy_algorithms::findMinimumEdge (INFINITY_INT, partial_graph);
128
135
129
136
// Test Case with Directed weighted graph. Krushkal algorithm does not give
130
137
// optimal answer
131
138
std::cout << " \n Test Case 8:\n " ;
132
139
std::array<std::array<int , 4 >, 4 > directed_graph{
133
- 0 ,
134
- 3 ,
135
- 7 ,
136
- INFINITY_INT, // Vertex 0 has edges to Vertex 1 and Vertex 2
137
- INFINITY_INT,
138
- 0 ,
139
- 2 ,
140
- 5 , // Vertex 1 has edges to Vertex 2 and Vertex 3
141
- INFINITY_INT,
142
- INFINITY_INT,
143
- 0 ,
144
- 1 , // Vertex 2 has an edge to Vertex 3
145
- INFINITY_INT,
146
- INFINITY_INT,
147
- INFINITY_INT,
148
- 0 }; // Vertex 3 has no outgoing edges
140
+ 0 , 3 , 7 , INFINITY_INT, // Vertex 0 has edges to Vertex 1 and Vertex 2
141
+ INFINITY_INT, 0 , 2 , 5 , // Vertex 1 has edges to Vertex 2 and Vertex 3
142
+ INFINITY_INT, INFINITY_INT, 0 , 1 , // Vertex 2 has an edge to Vertex 3
143
+ INFINITY_INT, INFINITY_INT, INFINITY_INT, 0 }; // Vertex 3 has no outgoing edges
149
144
greedy_algorithms::findMinimumEdge (INFINITY_INT, directed_graph);
150
145
151
146
// Test case with wrong input passed
152
147
std::cout << " \n Test Case 9:\n " ;
153
- std::array<std::array<int , 4 >, 3 > graph9{0 , 5 , 5 , 5 , 5 , 0 ,
154
- 5 , 5 , 5 , 5 , 5 , 5 };
148
+ std::array<std::array<int , 4 >, 3 > graph9{
149
+ 0 , 5 , 5 , 5 ,
150
+ 5 , 0 , 5 , 5 ,
151
+ 5 , 5 , 5 , 5 };
155
152
greedy_algorithms::findMinimumEdge (INFINITY_INT, graph9);
156
153
157
154
// Test case with all same values between every edges
158
155
std::cout << " \n Test Case 10:\n " ;
159
- std::array<std::array<int , 5 >, 5 > graph10{0 , 5 , 5 , 5 , 5 , 5 , 0 , 5 , 5 ,
160
- 5 , 5 , 5 , 0 , 5 , 5 , 5 , 5 , 5 ,
161
- 0 , 5 , 5 , 5 , 5 , 5 , 0 };
156
+ std::array<std::array<int , 5 >, 5 > graph10{
157
+ 0 , 5 , 5 , 5 , 5 ,
158
+ 5 , 0 , 5 , 5 , 5 ,
159
+ 5 , 5 , 0 , 5 , 5 ,
160
+ 5 , 5 , 5 , 0 , 5 ,
161
+ 5 , 5 , 5 , 5 , 0 };
162
162
greedy_algorithms::findMinimumEdge (INFINITY_INT, graph10);
163
163
164
164
std::cout << " \n All tests have successfully passed!\n " ;
0 commit comments