디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

시간복잡도랑 공간복잡도 풀어봤는데 맞았는지 지적좀

공간복잡ㅅㅂ(110.8) 2011.04.06 02:18:20
조회 376 추천 0 댓글 0

이건 1번문제

1.void transpose(term a[][], term b[][]){
2.
3.int m, n, v, i, j, p;
4. m = a[0][0]; //희소 행렬 a의 행 수
5. n = a[0][1]; //희소 행렬 a의 열 수
6. v = a[0][2]; //희소 행렬 a에서 0이 아닌 원소 수
7. b[0][0]=n; // 전치 행렬 b의 행 수
8. b[0][1]=m; // 전치 행렬 b의 열 수
9. b[0][2]=v; // 전치 행렬 b의 원소 수

10. if( v > 0){ // 0이 아닌 원소가 있는 경우에만 전치 연산 수행
11.
12. p=1;
13.  for( i=0 ; i<n ; i++) // 희소 행렬 a의 열 별로 전치 반복 수행

14.  for( j=1; j<=v ; j++) //0이 아닌 원소 수에 대해서만 반복 수행

15.   if(a[j][i] == i) { //현재의 열에 속하는 원소가 있으면 b[]에 삽입

16.     b[p][0] = a[j][1]
17.     b[p][1] = a[j][0]
18.    b[p][2] = a[j][2]
19.     p++;
20     
21.     }
22.     }
23.}

이 소스는   a라는 테이블과 b라는 테이블을 두고,
0번과 1번에는 행과 열을, 2에는 원소값을 두는거임.


  a                    b
-----            -----
2 6 2     ->>    6 2 2
0 2 1              0 2 1
0 4 3              4 0 3

이런식으로 바꾼다는 소스임
밑에 2번문제도 마찬가지고. 단지 방법이 틀릴뿐.

그럼. 공간복잡도를 보면,
알고리즘을 실행시키는데 무관한 부분과 밀접한 부분으로 나눔.
무관한 부분은 프로그램 코드를 저장하기 위한 공간, 프로그램을 수행하기 위해 시스템이 필요로 하는 공간 등이 이에 포함.

밀접한 부분은 변수를 저장하기 위한 공간이 필요함. 순환스택도 필요하다는데 이 소스는 스택은 관련없으니 패쓰

그럼 공간복잡도로 풀어보면 10라인은 (n+1) , 12라인은 1, 13,14라인은 합치면 2n 15는(n+1) 16~18라인은 3n, 19는 1
여기까지 풀어보면 공간복잡도는 6n+2
시간복잡도는 Big-O로 O(n)

------------------------------------------------------------------
이건 2번문제
1.void fastTranspose(term a[][], term b[][]) {

2.int col_term[MAX_COL] = {0}; // 각 열의 원소 개수를 저장하는 배열
3.int starting_pos[MAX_COL]; // 각 열의 위치를 저장하는 배열
4.int i, j, m, n, v;
5.m = a[0][0];
6. n = a[0][1]; //열의 크기
7. v = a[0][2]; // 원소의 개수
8. b[0][0]=n;
9. b[0][1]=m;
10. b[0][2]=v;
11. if(v > 0) {
12. for( i=1 ; i <= v; i++) // 각 열의 원소 개수 구하기
13.  col_term[a[i][1]]++;
14. starting_pos[0] = 1; // 0열의 시작 위치를 초기화

15. for( i=1 ; i < n ; i++) // 각 열의 위치를 구하기
16. starting_pos[i] = starting_pos[i-1] + col_term[i-1];
17.  j= starting_pos[a[i][1]]; // 배열 a에서 b로 옮기기
18.   b[p][0] = a[j][1]
19.   b[p][1] = a[j][0]
20.   b[p][2] = a[j][2]
21.   starting pos[a[i][1]]++;
22.  }
23. }
}

얘도 풀어서 보면, 공간복잡도는 2n+10
시간복잡도는 O(n)


음 왠지 풀어보니까 아닌거 같은데 ㅡ_ㅡ
맞나 안맞나 확인좀 해줘 횽들!
길어서 미안해 ㅠㅠ

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 연예인 안 했으면 국가대표로 올림픽 출전했을 것 같은 스타는? 운영자 24/08/05 - -
250606 개발자가 왜 밤새는줄 알아? [20] 케챱푸푸갤로그로 이동합니다. 11.05.18 389 0
250605 코딩 스타일에 대해서 한마디 한다. [13] 케챱푸푸갤로그로 이동합니다. 11.05.18 293 0
250603 C언어 미로찾기같은거 만드는데 질문좀 [6] 123(121.186) 11.05.18 2998 0
250602 아래 자바 질문 답변임. [9] 케챱푸푸갤로그로 이동합니다. 11.05.18 114 0
250601 RED5 or WOWZA 서버 써보신분~! 꼬꼬댁(121.66) 11.05.18 223 0
250600 자바 초보 개발잔데요 [5] ㅁㅁㅁ(119.70) 11.05.18 107 0
250599 백수 4일째 !@#ㅇㅇ(125.186) 11.05.18 59 0
250597 형들 질문좀 .. [1] 너크업샨(121.160) 11.05.18 44 0
250595 내 말 무시하지 마시오 ㅇㅋ?? [1] ㅁㄹ(203.246) 11.05.18 82 0
250594 AS3.0 오프라인 강의함 [8] McHello갤로그로 이동합니다. 11.05.18 165 0
250592 웹 크롤러 잘 아는 횽들 한번만 봐주세요 ㅠㅠㅠㅠㅠㅠㅠ [8] 늅늅(141.223) 11.05.18 197 0
250590 asp관련 외주 /재택 하실분 있나요? [3] 에잎롸갤로그로 이동합니다. 11.05.18 114 0
250589 미쿡 여친이 있는데 [2] 찬양하라.NET갤로그로 이동합니다. 11.05.18 197 0
250584 아놔.. hdmi단자에 케이블이 안맞어 [4] 112(222.118) 11.05.18 119 0
250582 c# 고수님들 이거 해결좀 [2] 123(125.7) 11.05.18 81 0
250579 형들 c에서 헤더파일 [1] ㄴㄴ(121.50) 11.05.18 58 0
250577 테스트에요 금방 지울께요~ zeromin갤로그로 이동합니다. 11.05.18 112 0
250576 안드로이드 개발자 계시나요? [1] (180.227) 11.05.18 70 0
250575 아 자바 공부 하고 있어요 [2] 떠덩(211.183) 11.05.18 134 0
250573 내가 패킷핵을 만드려고 하는데........ [2] 레오레(115.23) 11.05.18 423 0
250572 안녕하세요 오토플 크랙 가능하신분!!사례해드립니다 [2] 리버싱(121.124) 11.05.18 120 0
250571 밑에. [1] 쏴봐(138.16) 11.05.18 63 0
250570 함수 배운지 1주일 됫어요.. 과제로 프로그래밍 짯는데.. 왜오류가 나죠 [26] 악플러^^*갤로그로 이동합니다. 11.05.18 301 0
250569 자바 레이아웃 질문좀 [1] 자질(219.251) 11.05.18 92 0
250568 리팩토링 [1] elwlwlwk갤로그로 이동합니다. 11.05.18 88 0
250566 안드로이드로 서버랑 핸드폰 tcp/ip 통신(댓글왜 안써짐) [2] 가뇽(211.47) 11.05.18 203 0
250563 c언어 답변좀 부탁합니다.. [6] 쿠르르(180.64) 11.05.18 244 0
250562 짤2 헤헤헤(222.237) 11.05.18 131 0
250561 왠 변태들이 판을 치지 Adelposs갤로그로 이동합니다. 11.05.18 133 0
250560 헐렝?? 헤헤헤(222.237) 11.05.18 96 0
250559 알바여 내글도 삭제해보라! 츤데레리자몽(14.33) 11.05.18 98 0
250558 헤헤헤 는 본다 [2] 외계달팽갤로그로 이동합니다. 11.05.18 123 0
250557 외계달팽의 의지에 따라 [2] 헤헤헤(222.237) 11.05.18 123 0
250556 나 좆대딩인데 교수가 MFC에 대해서 하는말이 [2] 메리프갤로그로 이동합니다. 11.05.18 387 0
250555 님들 프로그래머나 네트워크쪽 신입연봉얼마임? [2] 금고래갤로그로 이동합니다. 11.05.18 234 0
250554 알바를 소환하는글 [1] 헤헤헤(222.237) 11.05.18 112 0
250553 시샵이고 MFC고 뭐고 [6] 헤헤헤(222.237) 11.05.18 157 0
250550 자바 패턴 공부하는 횽들있음?? [7] 돌고래스피커갤로그로 이동합니다. 11.05.18 103 0
250549 조별과제는 혼자해야지.. [7] 일광면(119.198) 11.05.18 230 0
250548 아오 소프트웨어공학 배우는데 [2] dd(138.246) 11.05.18 98 0
250547 조별과제 진심 개공감임 ㅋㅋㅋㅋㅋ [7] 살려주세요(112.169) 11.05.18 324 0
250545 조별과제란? [2] 동적할당갤로그로 이동합니다. 11.05.18 188 0
250544 청일점으로 여자들이랑 팀프로젝트 하는데 [9] 한마음택배갤로그로 이동합니다. 11.05.18 344 0
250543 동적할당 [1] Adelposs갤로그로 이동합니다. 11.05.18 56 0
250541 밑에 문제 질문드렸었는데 하나만 더 물어볼게요;; [6] 소록리오(221.141) 11.05.17 89 0
250539 mfc 메뉴 생성 중에 질문좀 할게 [1] 123(211.49) 11.05.17 84 0
250538 요즘도 MFC 많이쓰나 [5] 토페갤로그로 이동합니다. 11.05.17 227 0
250535 엄마 나 100점 받아왔어.............. Adelposs갤로그로 이동합니다. 11.05.17 119 0
250534 심심풀이로 혼자 공부하고 있는사람인데 질문좀 [6] ㅁㄴㅇ(58.233) 11.05.17 89 0
250532 c 간단한 문제 하나 질문입니다.. [10] 소록리오(221.141) 11.05.17 120 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2