Advanced Algorithmda2
Advanced Algorithmda2
LAB DA-2
22MIC0009
MAHALAKSHMI BALAN
#define N 4
if (board[i][j])
printf("Q ");
else
printf(". ");
printf("\n");
int i, j;
if (board[row][i])
return 0;
if (board[i][j])
return 0;
if (board[i][j])
return 0;
return 1;
if (col >= N)
return 1;
if (isSafe(board, i, col)) {
board[i][col] = 1;
return 1;
board[i][col] = 0; // BACKTRACK
return 0;
}
int solve()
int board[N][N] = { { 0, 0, 0, 0 },
{ 0, 0, 0, 0 },
{ 0, 0, 0, 0 },
{ 0, 0, 0, 0 } };
if (solveNQ(board, 0) == 0) {
return 0;
printBoard(board);
return 1;
int main()
solve();
return 0;
OUTPUT:
2)Travelling salesman problem using Branch and Bound
CODE:
#include <stdio.h>
visited[c] = 1;
min = tsp_g[c][k];
adj_vertex = k;
if (min != 999) {
if (adj_vertex == 999) {
adj_vertex = 0;
return;
travellingsalesman(adj_vertex, tsp_g);
}
int main() {
int i, j;
scanf("%d", &n);
int tsp_g[10][10];
scanf("%d", &tsp_g[i][j]);
visited[i] = 0;
printf("\n");
travellingsalesman(0, tsp_g);
printf("%d\n", cost);
return 0;
OUTPUT:
3)Knapsack Problem using Dynamic Programming
CODE:
#include <stdio.h>
if (X > Y)
return X;
else
return Y;
int i, w;
if (i == 0 || w == 0)
K[i][w] = 0;
else
return K[n][W];
int main()
int n, W;
scanf("%d", &n);
scanf("%d", &val[i]);
scanf("%d", &wt[i]);
return 0;
OUTPUT:
4)Floyd-Warshall Algorithm
CODE:
#include <stdio.h>
#include <limits.h>
if (i == j)
D[i][j] = 0;
else if (A[i][j] == 0)
D[i][j] = INF;
else
D[i][j] = A[i][j];
fillDistanceMatrix(n, A, D);
int main() {
int n;
scanf("%d", &n);
int A[n][n];
int D[n][n];
printf("Enter the adjacency matrix (%d x %d) with 'I' for infinity element-wise:\n", n, n);
char input[5];
scanf("%s", input);
if (input[0] == 'I') {
A[i][j] = INF;
} else {
floydWarshall(n, A, D);
if (D[i][j] == INF)
printf("%7s", "I");
else
printf("%7d", D[i][j]);
printf("\n");
return 0;
OUTPUT: