برنامه ای بنویسید که به کمک شیوه بازگشتی سورت کردن ارایه را انجام دهد

سلام
خواهشا جواب این سوال را هم بدهید
برنامه ای بنویسید که به کمک شیوه بازگشتی سورت کردن ارایه را انجام دهد
با تشکر
 

saalek110

Well-Known Member
منبع :
http://64.233.183.104/search?q=cach...rogramming+recursive+sort&hl=en&ct=clnk&cd=45
----------------------------------------
من دقیقا نمی دونم جواب سئوال شما چیه. من عبارت
c programming recursive sort
را سرچ کردم و در آدرس بالا کد زیر را پیدا کردم. نمی دونم جواب سئوال شما هست یا نه. من با توربو سی 4 و نیم اجراش کردم . ممکنه اینکلودها در برنامه شما نیاز باشه عوض بشه. مثلا برای تابع calloc شاید هدرش برای شما alloc.h نباشد.

کد:
#include<stdio.h>
#include<alloc.h>

void quick(int,int);

int *array,n,i,c=0;

int main()
{
   
	printf("Enter number of elements in the array");
	scanf("%d",&n);

	array= (int*) calloc(n,sizeof(int));

	printf("Enter elements ");
	  for(int i=1;i<=n;i++)
		 scanf("%d",&array[i]);

	quick(1,n);
	printf("\n");

	for(i=1;i<=n;i++)
	printf("%d ",array[i]);
	printf("\n %d",c);

	//system("pause");
	return 0;

}
void quick(int x,int y)
{
	int l,k,temp;
	k=x;
	l=y;

	if((y-x)>=1)
	  {
		 while(l>=x)
		  {
			 if(array[k]>array[l]&&k<l)
		  {
				c++;
				temp=array[l];
				array[l]=array[k];
				array[k]=temp;
				k=l;
				l--;
		  }
			 else
				if(array[k]<array[l]&&k>l)
			 {
				c++;
				temp=array[l];
				array[l]=array[k];
				array[k]=temp;
				temp=k;
				k=l;
				l=temp;
			 }
			else
			  l--;
		 }
	quick(x,k-1);
	quick(k+1,y);
}
}
 

جدیدترین ارسال ها

بالا