C++ Primer學習筆記一

/*
題目要求把字符串BRGBBGRRGBBGBBBGRRGBGRG按RGB順序排列,空間複雜度爲O(1)
*/#include<iostream>
using namespace std;
int main()
{
	char a[]="BRGBBGRRGBBGBBBGRRGBGRG\0";
	
	for(int i=0;i<strlen(a);i++)
	{
		cout<<a[i]<<",";
	}
	cout<<"\n";

	for(int i = 0;i < strlen(a);i++)
	{
		if(a[i]=='R')
		{
			for(int j=0;j < i;j++)
			{
				if(a[j]!='R')
				{
					char temp = a[j];
					a[j] = a[i];
					a[i] = temp;
					break;
				}
			}
		}
		if(a[i]=='B')
		{
			for(int j=strlen(a)-1;j>i;j--)
			{
				if(a[j]!='B')
				{
					char temp = a[j];
					a[j] = a[i];
					a[i] = temp;
					i--;
					break;
				}
			}
		}
	}

	for(int i=0;i<strlen(a);i++)
	{
		cout<<a[i]<<",";
	}

	bool signal;
	cin>>signal;
}
相關文章
相關標籤/搜索