-
Notifications
You must be signed in to change notification settings - Fork 1
CAU-DOSC/Rotation31
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
1. Trivial.c -> 장동훈 외부에 temp변수를 선언하고 str의 끝변수를 저장한뒤에 한 칸씩 밀어준다. 이를 d번 반복한다. 2. Juggle.c -> 강명석 배열의 길이(n)과 rotatae 할 수(d)의 최대 공약수를 구한다. 반복문을 n,d의 Gcd 만큼의 횟수를 반복하는데 이는 회전을 시킬때 n을 mod 0 ,mod 1, ..... mod Gcd-1 끼리의 집합 들끼리 바꿔준다 생각할 수 있다. 예를 들어 n=6 d=3 이라하면 처음엔 mod 0 끼리 즉 0,3 끼리 바꾸고 그다음은 mod1 즉 1,4끼리 바꾸고 그다음은 mod2 (2,5)끼리 바꾸면 성공적으 로 Rotate 시킬 수 있다. 3. bw.c -> 양수영 char 형 배열에서 두 부분으로 나눈후 작은 부분을 앞이나 뒤로 보내고 다시 큰 부분을 두부분, 즉 작은 부분과 같은 크기의 배열 하나와 나머지 하나로 나눈다. 이때 작은 부분의 배열과 같은 크기의 배열의 위치를 서로 바꾸는 작업을 한다. 이를 두 부분의 크기가 같아질 때까지 반복한 뒤, 두 크기가 같아지면 그 둘을 swap한다. 4. reverse.c -> 김동욱 reverse를 이용한 Rotate방식 d에 해당하는 사이즈만큼 동적할당 배열의 d번째의 데이터 까지 동적메모리에 input 나머지 str의 데이터를 이동 동적메모리에 저장된 데이터를 str에 삽입 5. main ->김재범 time.h 라이브러리를 이용한 clock함수를 이용해서 진행 시간 얻어냄 데이터를 랜덤 함수를 이용해 랜덤한 데이터를 얻어내고 struct에 저장 실험 결과 STRLength ROTATEdistance T.trivial J.juggle T.bw T.reverse 379 -163 1.778 0.016 0.015 0.016 460 108 1.373 0.016 0.015 0.031 526 -310 4.696 0.031 0.016 0.031 591 -122 2.088 0.016 0.031 0.016 771 -614 13.748 0.047 0.031 0.045 실험 결과는 스트링의 길이가 커지면 커질수록 trivial의 실행 시간은 매우 커지는것에 비해 다른 juggle bw reverse는 실행이 스트링의 길이와 상관없이 매우 짧음을 알 수 있다. 따라서 trivial은 다른 3개의 펑션에 비해서 효율이 매우 좋다는 것을 알 수 있다. 6. header -> 박승수
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published