<div><strike>#include <stdio.h></stdio.h></strike></div> <div><strike>#include <stdlib.h></stdlib.h></strike></div> <div><strike>#define NUM 101</strike></div> <div><strike><br /></strike></div> <div><strike>static int S[NUM];</strike></div> <div><strike><br /></strike></div> <div><strike>void Merge(int low, int mid, int high){</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>int i, j, k, index1, index2;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>int U[NUM];</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>i=low; j=mid+1; k=low;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>while(i<=mid && j<=high){</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>if(S[i]</strike><s[j]){<s[j]){< div=""> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>U[k]=S[i];</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>i++;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>else{</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>U[k]=S[j];</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>j++;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>k++;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>if(i>mid){</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>index1=j; index2=k;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>while(index1<=high){</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>U[index2]=S[index1];</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>index1++; index2++;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>else{</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>index1=i; index2=k;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>while(index1<=mid){</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>U[index2]=S[index1];</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>index1++; index2++;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>for(index1=low;index1<=high; index1++){</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>S[index1]=U[index1];</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div><strike>}</strike></div> <div><strike><br /></strike></div> <div><strike>void MergeSort(int low, int high){</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>int mid;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>if(low</strike><high){< div=""> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>mid=(low+high)/2;</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>MergeSort(low, mid);</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>MergeSort(mid+1, high);</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>Merge(low, mid, high);</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div><strike>}</strike></div> <div><strike><br /></strike></div> <div><strike><br /></strike></div> <div><strike>void main(){</strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>int i;</strike></div> <div><strike><br /></strike></div> <div><strike><span class="Apple-tab-span" style="white-space: pre"> </span>for(i=1; i</strike><num; i++){<="" div=""><num; i++){<="" span=""> <div style="font-size: 9pt; line-height: 1.5"><strike><span class="Apple-tab-span" style="white-space: pre"> </span>S[i]=rand();</strike></div> <div style="font-size: 9pt; line-height: 1.5"><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div style="font-size: 9pt; line-height: 1.5"><strike><span class="Apple-tab-span" style="white-space: pre"> </span>MergeSort(1, NUM-1);</strike></div> <div><strike style="font-size: 9pt; line-height: 1.5"><span class="Apple-tab-span" style="white-space: pre"> </span>for(i=1; </strike><num; i++){<="" div=""><strike style="font-size: 9pt; line-height: 1.5">i</strike><num; i++){<="" div=""><strike style="font-size: 9pt; line-height: 1.5"><num; i++){<="" span=""></num;></strike> <div style="font-size: 9pt; line-height: 1.5"><strike><span class="Apple-tab-span" style="white-space: pre"> </span>printf("%d ", S[i]);</strike></div> <div style="font-size: 9pt; line-height: 1.5"><strike><span class="Apple-tab-span" style="white-space: pre"> </span>}</strike></div> <div style="font-size: 9pt; line-height: 1.5"><strike>}</strike></div> <div style="font-size: 9pt; line-height: 1.5"><br /></div> <div style="font-size: 9pt; line-height: 1.5">소스는 이거고</div> <div style="font-size: 9pt; line-height: 1.5">결과는 나오는데 정렬을 하다 말아요...</div> <div style="font-size: 9pt; line-height: 1.5">급하고 졸린데 어디가 틀렸는지 모르게뜸니당</div> <div style="font-size: 9pt; line-height: 1.5">도와주세요!</div> <div style="font-size: 9pt; line-height: 1.5"><br /></div> <div style="font-size: 9pt; line-height: 1.5">(배열은 1부터 100까지예여..)</div> <div style="font-size: 9pt; line-height: 1.5"><br /></div> <div style="font-size: 9pt; line-height: 1.5"><br /></div> <div style="line-height: 1.5"><font size="4" face="맑은 고딕">해결했습니다 휴;</font></div> <div style="font-size: 9pt; line-height: 1.5"><br /></div> <div> <div>#include <stdio.h></div> <div>#include <stdlib.h></div> <div>#define NUM 101</div> <div><br /></div> <div>static int S[NUM];</div> <div><br /></div> <div>void Merge(int low, int mid, int high){</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>int i=low; int j=mid+1; int k=low;</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>int x=0;</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>int U[NUM];</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>//값을 비교 후 작은 값을 U라는 temp배열에 넣습니당.</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>while(i<=mid && j<=high){</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>if(S[i]<S[j]) U[k++]=S[i++];</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>else U[k++]=S[j++];</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>}</div> <div><br /></div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>//나머지 원소들을 U배열에 모두 넣어줘영.</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>if(i>mid) { while(k<=high) U[k++]=S[j++]; }</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>else { while(i<=mid) U[k++]=S[i++]; }</div> <div><br /></div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>for(x=low; x<=high; x++) S[x]=U[x];</div> <div>}</div> <div><br /></div> <div>void MergeSort(int low, int high){</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>int mid;</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>if(low<high){</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>mid=(low+high)/2;</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>MergeSort(low, mid);</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>MergeSort(mid+1, high);</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>Merge(low, mid, high);</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>}</div> <div>}</div> <div><br /></div> <div><br /></div> <div>void main(){</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>int i;</div> <div><br /></div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>for(i=1; i<NUM; i++){</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>S[i]=rand();</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>}</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>MergeSort(1, NUM-1);</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>for(i=1; i<NUM; i++){</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>printf("%d\t", S[i]);</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>}</div> <div><span class="Apple-tab-span" style="white-space: pre"> </span>puts("");</div> <div>}</div></div></num;></num;></div></num;></num;></div></high){<></div></s[j]){<s[j]){<></div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.