[c]求逆序数

[c]求逆序数_第1张图片

#include
int main()
{
	int n,i,count;
	scanf("%d",&n);
	int arr[n];
	count=0;
	for(i=0;i<=n-1;i++)
	{
		scanf("%d",&arr[i]);
	}
	for(int j=0;j<=n-2;j++)//注意是小于等于n-2,因为倒数第一个元素后面没有数了,不需要比较
	{
		for(int q=j;q<=n-2;q++)//小于等于n-2,假如为n-1,循环会进行arr[n]的比较,创建的数组中无arr[n]
		{
			if(arr[j]>arr[q+1])
			count++;
		}
	}
	printf("%d\n",count);
	return 0;
}

[c]求逆序数_第2张图片

你可能感兴趣的:(c语言,算法,数据结构)