我是靠谱客的博主 超级柚子,最近开发中收集的这篇文章主要介绍三色旗问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

//三色旗问题
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define BLUE 'b'
#define WHITE 'w'
#define RED 'r'
#define SWAP(x,y){char temp;
temp = color[x];
color[x] = color[y];
color[y] = temp; }
int main()
{
	char color[] = { 'r','w','b','w','w','b','r','b','w','r','' };
	int wFlag = 0;
	int bFlag = 0;
	int rFlag = strlen(color) - 1;
	int i;
	for (i = 0; i < strlen(color); i++)
		printf_s("%c", color[i]);
	printf_s("n");
	while (wFlag <= rFlag)
	{
		if (color[wFlag] = WHITE)
			wFlag++;
		else if (color[wFlag] = BLUE)
		{
			SWAP(bFlag, wFlag);
			bFlag++; wFlag++;
		}
		else 
		{
			while (wFlag < rFlag && color[rFlag] == RED)
				rFlag--;
			SWAP(rFlag, wFlag);
			rFlag--;
		}
	}
for (i = 0; i < strlen(color); i++)
	printf_s("%c", color[i]);
printf_s("n");
return 0;
}

 

最后

以上就是超级柚子为你收集整理的三色旗问题的全部内容,希望文章能够帮你解决三色旗问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(97)

评论列表共有 0 条评论

立即
投稿
返回
顶部