검색어 입력폼

알고리즘, 행렬곱셈과 쉬트라센 알고리즘의 수행시간 비교

저작시기 2007.11 |등록일 2008.03.17 한글파일한글 (hwp) | 9페이지 | 가격 1,200원

소개글

알고리즘, 행렬곱셈과 쉬트라센 알고리즘의 수행시간 비교

행렬곱셈, 쉬트라센 알고리즘 코드 및 수행화면, 그리고 비교분석자료.

목차

■ 실행환경
■ 코딩
■ 실행화면
■ 단순 행렬곱셈과 쉬트라쎈 알고리즘의 수행시간 비교
■ 후기

본문내용

■ 실행환경
CPU - Intel Celeron 2.6Ghz
MEMORY - 512MB

■ 코딩
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>

int **a,**b,**c,**m1, **m2, **m3, **m4, **m5, **m6, **m7, **temp1, **temp2;

void strassen(int tr, int rc, int **s1, int **s2, int **s3)//쉬트라쎈 알고리즘
{
int a, b, c, d, e, temp;
if (rc <= tr) //Th와 행렬크기 비교
{
for(c = 0 ; c < rc ; c++)
{
for(e = 0 ; e < rc ; e++)
{
temp = 0;
for(d = 0 ; d < rc ; d++)
{
temp += s1[c][d] * s2[d][e];
}
s3[c][e] = temp;
}
}
}
else // 쉬트라쎈 알고리즘
{
for(a = 0; a < rc/2 ; a++) // m1 = (a11 + a22) * (b11 + b22)
{
for (b = 0; b < rc/2 ; b++)
{
temp1[a][b] = s1[a][b] + s1[a + rc/2][b + rc/2];
temp2[a][b] = s2[a][b] + s2[a + rc/2][b + rc/2];
}
}
strassen(tr,rc/2,temp1,temp2,m1);
for(a = 0; a < rc/2 ; a++) // m2 = (a21 + a22) * b11
{
다운로드 맨위로