二分插入.cpp

来自「经典的二路插分算法」· C++ 代码 · 共 39 行

CPP
39
字号
#include<iostream.h>
void main()
{
	int array[4];
	cout<<"Please input four integer number:"<<endl;
	int i;
	for(i=0;i<4;i++)
	{
		cin>>array[i];
	}
	int temp;
	int left,right,middle;
	for(i=1;i<4;i++)
	{
		temp=array[i];
		left=0;
		right=i-1;
		while(left<=right)
		{
			middle=(left+right)/2;
			if(temp<array[middle])
			{
				right=middle-1;
			}
			else
				left=middle+1;
		}
		for(int j=i-1;j>=left;j--)
		{
			array[j+1]=array[j];
		}
		array[left]=temp;
	}
	for(i=0;i<4;i++)
	{
		cout<<array[i]<<" ";
	}
	cout<<endl;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?