《 C 언어 - 데이터 구조 장 》 - 연통 도의 분량 을 구하 다.

그림 이 없 는 연결 분량 은 비교적 간단 하 며 깊이 가 우선 적 으로 옮 겨 다 닐 때 기록 만 하면 된다.
깊이 있 는 검색 알고리즘 은 재 귀적 인 성질 을 이용 하여 만 든 것 이다.
void dfs(graphy *gra)//    
{ 
  int k=0;
  for(int i=1;i<=gra->node_number;i++)
  { 
  	if(visted[i-1]==0)//            
  	             //         ,         
  	             //       ,          i++
  	             //        
  	{ 
  		dfs_graphy(gra,i);
      k++;//k         
  	}
  }
   printf("%d",k);
  
}

주로 사용 되 는 사상 을 재 귀적 으로 옮 겨 다 니 는 것 이 비교적 간단 하 므 로 종 이 를 가지 고 코드 절차 에 따라 그 릴 수 있다.
void dfs_graphy(graphy *gra1,int v0)
{
    graphy *gra=gra1;
    visted[v0-1]=1; //visited  0  ,      1  
                    //      
    for(int i=1;i<=gra->node_number;i++)
    {
    	if(gra->a[v0][i]==1&&visted[i-1]==0)
    	{
         dfs_graphy(gra,i);
    	}
    }
}

좋은 웹페이지 즐겨찾기