萌新写折半排序程序运行不出结果,求各位dalao看看是哪里有问题
  • 板块学术版
  • 楼主Spark1145
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/9/28 07:54
  • 上次更新2024/9/28 10:55:44
查看原帖
萌新写折半排序程序运行不出结果,求各位dalao看看是哪里有问题
1381169
Spark1145楼主2024/9/28 07:54

本蒟蒻想着学了折半排序来用代码实现一下的,感觉自己的这个程序逻辑上没问题,但就是运行不出结果,希望各位dalao救我一命orz

using namespace std;
int main()
{
	int a[10],n,temp,left,right,mid,c;
	cin>>n;
	for(int i=0;i<n;i++) cin>>a[i];
	for(int j=1;j<n;j++)
	{
		temp=a[j];
		left=0;
		right=j;
		while(left<=right)
		{
			mid=(left+right)/2;
			if(temp>=a[mid])
			{
				left=mid+1;
			}
			if(temp<a[mid])
			{
				right=mid-1;
			}
		}
		c=mid;
		while(mid<=c&&c<=j-1)
		{
			a[c+1]=a[c];
		}
		a[mid]=temp;
	}
	for(int m=0;m<10;m++) cout<<a[m]<<" ";
	return 0;
```}
2024/9/28 07:54
加载中...