Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- #ifndef GRAFNEORIENTAT_H_INCLUDED
- #define GRAFNEORIENTAT_H_INCLUDED
- int a[10][10],n,viz[25],T[20];
- ifstream f("date.in");
- ifstream f1("date1.in");
- void citire_graf_fisier(int a[10][10], int &n)
- {
- f>>n;
- for(int i=1; i<=n; i++)
- for(int j=1; j<=n; j++)
- f>>a[i][j];
- }
- void citire_graf_fisier_muchii(int a[10][10], int &n)
- {
- int i,j;
- f1>>n;
- while(f1>>i>>j)
- a[i][j]=a[j][i]=1;
- }
- void init(int a[10][10])
- {
- for(int i=0; i<10; i++)
- for(int j=0; j<10; j++)
- a[i][j]=0;
- }
- void AfisareMatriceAdiacenta(int a[10][10], int n)
- {
- for(int i=1; i<=n; i++)
- {
- for(int j=1; j<=n; j++)
- cout<<a[i][j]<<" ";
- cout<<endl;
- }
- cout<<endl;
- }
- int grad(int a[10][10], int n, int nod)
- {
- int rez=0;
- for(int i=1; i<=n; i++)
- rez+=a[nod][i];
- return rez;
- }
- int NodIzolat(int a[10][10], int n, int nod)
- {
- if(grad(a,n,nod)==0)
- return 1;
- else
- return 0;
- }
- int NodTerminal(int a[10][10], int n, int nod)
- {
- if(grad(a,n,nod)==1)
- return 1;
- else
- return 0;
- }
- int GradMaxim(int a[10][10], int n, int nod)
- {
- int maxim=0;
- for(int i=1; i<=n; i++)
- if(maxim<grad(a,n,i))
- maxim=grad(a,n,i);
- return maxim;
- }
- int NrMuchii(int a[10][10], int n)
- {
- int rez=0;
- for(int i=0; i<=n; i++)
- rez+=grad(a,n,i);
- rez/=2;
- return rez;
- }
- void BF_modificat(int a[10][10], int n, int nod)
- {
- int prim=1, ultim=1,coada[25];
- coada[prim]=nod;
- viz[nod]=1;
- while(prim<=ultim)
- {
- for(int i=1; i<=n; i++)
- if(a[coada[prim]][i]==1 && !viz[i])
- {
- ultim++;
- coada[ultim]=i;
- viz[i]=1;
- T[i]=coada[prim];
- }
- cout<<coada[prim];
- prim++;
- }
- }
- void BF(int a[10][10], int n, int nod)
- {
- int prim=1, ultim=1,coada[25];
- coada[prim]=nod;
- viz[nod]=1;
- while(prim<=ultim)
- {
- for(int i=1; i<=n; i++)
- if(a[coada[prim]][i] && !viz[i])
- {
- ultim++;
- coada[ultim]=i;
- viz[i]=1;
- }
- cout<<coada[prim];
- prim++;
- }
- }
- void DF(int a[10][10], int n, int nod)
- {
- cout<<nod;
- viz[nod]=1;
- for(int i=1; i<=n; i++)
- if(a[nod][i] && !viz[i])
- DF(a,n,i);
- }
- #endif // GRAFNEORIENTAT_H_INCLUDED
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement