loading...
مرجع مهندسی نرم افزار
آخرین ارسال های انجمن
حامد شیرزاد بازدید : 1016 جمعه 27 آبان 1390 نظرات (0)

 

#include<;stdio.h>
 
#define SIZE 100
 
void mergesort(int, int a[]);
int main()
{
    int a[SIZE];
    int i, n;
 
    printf("No of elements to be sorted:n");
    scanf("%d",&n);
    printf("Enter the elements:n");
    for(i=0;i<n;i++)
    scanf("%d",&;a[i]);
    printf("Unsorted list:n");
    for(i=0;i<n;i++)
    printf("%d",a[i]);
    printf("n");
    mergesort(n, &;a);
    printf("Sorted list:n");
    for(i=0;i<n;i++)
    printf("%d ",a[i]);
    printf("n");
    return 0;
}
void mergesort(int n, int a[])
{
    int n1, n2, i, j, k;
    int a1[n];
    int *a2, *a3;
    for (i=0;i<n;i++)
    a1[i] = a[i];
    if (n%2 == 0)
    n1 = n/2;
    else
    n1 = n/2 + 1;
    n2 = n - n1;
    if (n >; 2)
    {
    mergesort(n1, &;a1);
    mergesort(n2, &;a1[n1]);
    }
    j = k = 0;
    a2 = &a1;
    a3 = &;a1[n1];
    for (i=0;i<n;i++)
    {
    if (k == n2)
    {
        a[i] = *(a2+j);
        j++;
    }
    else if (j == n1)
    {
        a[i] = *(a3+k);
        k++;
    }
    else if(*(a2+j) <;= *(a3+k))
    {
        a[i] = *(a2+j);
        j++;
    }
    else
    {
        a[i] = *(a3+k);
        k++;
    }
    }
}
 
 

تعداد صفحات : 6

درباره ما
به نام آنکه جان را فکرت آموخت در این وبلاگ سعی می شود به صورت تخصصی به مباحث مربوط به مهندسی نرم افزار به خصوص برنامه نویسی کامپیوتری پرداخته شود. مدیر وبلاگ : حامد شیرزاد
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • آمار سایت
  • کل مطالب : 431
  • کل نظرات : 9
  • افراد آنلاین : 1
  • تعداد اعضا : 109
  • آی پی امروز : 1
  • آی پی دیروز : 47
  • بازدید امروز : 3
  • باردید دیروز : 317
  • گوگل امروز : 0
  • گوگل دیروز : 5
  • بازدید هفته : 2,705
  • بازدید ماه : 3,611
  • بازدید سال : 31,631
  • بازدید کلی : 696,806
  • کدهای اختصاصی

    قالب وبلاگ