수다닷컴

  • 해외여행
    • 괌
    • 태국
    • 유럽
    • 일본
    • 필리핀
    • 미국
    • 중국
    • 기타여행
    • 싱가폴
  • 건강
    • 다이어트
    • 당뇨
    • 헬스
    • 건강음식
    • 건강기타
  • 컴퓨터
    • 프로그램 개발일반
    • C언어
    • 비주얼베이직
  • 결혼생활
    • 출산/육아
    • 결혼준비
    • 엄마이야기방
  • 일상생활
    • 면접
    • 취업
    • 진로선택
  • 교육
    • 교육일반
    • 아이교육
    • 토익
    • 해외연수
    • 영어
  • 취미생활
    • 음악
    • 자전거
    • 수영
    • 바이크
    • 축구
  • 기타
    • 강아지
    • 제주도여행
    • 국내여행
    • 기타일상
    • 애플
    • 휴대폰관련
  • 프로그램 개발일반
  • C언어
  • 비주얼베이직

C질문이요..

큰꽃들

2023.04.01

#include stdio.h
#define NODES 6
#define NO 999
int adj_mat[NODES][NODES] =
{{0, 8, 2, 9, NO, NO},
{NO, 0, NO, NO, 1, NO},
{NO, NO, 0, 1, 15, 0},
{NO, 3, NO, 0, 4, 0},
{NO, NO, 20, NO, 0, 0},
{NO, NO, 2, NO, NO, 0}};
int P[NODES][NODES] =
{{-1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1}};
void mat_print_out();
void floyd_alg();
void path(int, int);
void print_path();
void print_array();
void main()
{
printf(\nAdjacency matrix print : \n);
mat_print_out();
floyd_alg();
print_path();
print_array();
}
void mat_print_out()
{
int i, j;
for (i=0; iNODES; i++)
{
for (j=0; jNODES; j++)
printf(%3d ,adj_mat[i][j]);
printf(\n);
}
printf(\n);
}
void floyd_alg()
{
int i, j, k;
for(k=0; kNODES; k++)
for (i=0; iNODES; i++)
for(j=0; jNODES; j++)
if (adj_mat[i][k] + adj_mat[k][j] adj_mat[i][j])
{
adj_mat[i][j] = adj_mat[i][k] + adj_mat[k][j];
P[i][j] = k;
}
}

void print_path()
{
int i, j;
for (i=0; iNODES; i++)
for (j=0; jNODES; j++)
if(i !=j)
{
printf([%d - %d] : ,i,j);
printf(%d - ,i);
path(i,j);
printf(%d \n,j);
}
}
void path (int from, int to)
{
int k;
k = P[from][to];
if (k!=-1)
{
path(from, k);
printf(%d - ,k);
path(k, to);
}
}
void print_array()
{
int i, j;
printf(\n);
printf(Array adj_mat : \n);
for (i=0; iNODES; i++)
{
for(j=0; jNODES; j++)
printf(%2d , adj_mat[i][j]);
printf(\n);
}

printf(Array P : \n);
for (i=0; iNODES; i++)
{
for (j=0; jNODES; j++)
printf(%2d ,P[i][j]);
printf(\n);
}
printf(\n);
}

노드가 6개 있습니다. 1번 노드, 2번노드,... 이렇게 있는데 배열의 특성상 1번노드를 0으로 표시하구 있습니다.

그래서 2차원배열 0번째 행과, 0번째열을 안쓸려구 하는데 여기에 어떤값을 넣어야할까요?

글구 그것은 방향그래프를 표현한것입니다. 1에서 3으로 가는 간선은 있는데 3에서 1로 가는 간선은 없다고 하면..

999값을 넣어서 표현했는데 괜찮은지? 아님 더 좋은 방법이 있는지 ... 많이 쓰는 방법은 무엇인지 알고싶습니다..

꾸벅..

신청하기





COMMENT

댓글을 입력해주세요. 비속어와 욕설은 삼가해주세요.

  • BabySue

    넵.. 공책에 그래프 그려서 배열에 값을 넣었고.. 결과는 정확하더군요.. 근데 모가 죄송한지?,ㅡㅡ;;

  • 렁찬

    죄송합니다. 추적은 해 보셨나요?

  • 베이비슈

    아..글구 1에서 1로 가는 비용을 0으로 했는데 맞는지? 아님 갈수없다고 999를 표시해야하는지 궁금합니다.

번호 제 목 글쓴이 날짜
2700142 하단이 붙어있는 가변 레이아웃구조 질문드립니다. 이플 2025-07-02
2700089 이미지를 사다리꼴로 비틀게 하는 액션코드가 있나요? (4) 여름 2025-07-01
2700033 배경에 그라데이션을 넣으려고 하는데요.. (4) 화이티 2025-07-01
2700005 [질문] TextField 객체의 실제 높이 알아오는 방법 ? 천사의눈물 2025-07-01
2699978 FileReferenceList를 이용하여 업로드시 자꾸 실행속도가 느리다는 팝업이... (10) 데이비드 2025-06-30
2699944 자바스크립트가 많은 사이트는... (6) 희나리 2025-06-30
2699918 브라우저마다 다른 input과 텍스트 정렬 (3) 늘봄 2025-06-30
2699887 동적텍스트를 그래픽으로?? (2) 족장 2025-06-30
2699862 scope넣기 (1) 아인 2025-06-29
2699835 exe로 만드는 방법을....알려주세요.. (5) 방방 2025-06-29
2699809 롤오버할때 백그라운드 이미지로할때 alt설명은 어떻게해야하죠?..ㅠ (4) 반혈 2025-06-29
2699757 리스트뷰에 있는 내용을 랜덤으로 추출 세실 2025-06-28
2699725 JMX 질문입니다. (1) 시나브로 2025-06-28
2699695 으으아으ㅏ으ㅏ 정말미쳐버리겟네요 진달래 2025-06-28
2699665 absolute에 대해서 궁금한게 있습니다 (1) 영빈이 2025-06-28
2699629 테마 적용이 잘 안됩니다. ㅠㅜ (2) 서희 2025-06-27
2699601 html코딩 브라우져 확인 할때.. (5) 에드워드 2025-06-27
2699575 [질문] 고수님들...가르쳐주세염....renameTo에 관하여 일본드립 2025-06-27
2699547 [급]레이어보다 object태그가 우선순위가 되는 문제 (5) DevilsTears 2025-06-27
2699518 javaScript중복체크 하는법좀.. 알려주세요 (3) 비 2025-06-26
<<  이전  1 2 3 4 5 6 7 8 9 10  다음  >>

수다닷컴 | 여러분과 함께하는 수다토크 커뮤니티 수다닷컴에 오신것을 환영합니다.
사업자등록번호 : 117-07-92748 상호 : 진달래여행사 대표자 : 명현재 서울시 강서구 방화동 890번지 푸르지오 107동 306호
copyright 2011 게시글 삭제 및 기타 문의 : clairacademy@naver.com