SWUST OJ492: 荷兰国旗问题
题目描述
荷兰国旗的问题是重新排列一系列字符R,W和B(红色,白色和蓝色是荷兰国旗的颜色),以便所有R首先出现,W紧随其后,B最后。针对此问题设计线性且稳定的算法。
输入
two lines, the first line is total of numbers characters R,W and B ,and the numbers less than 500005 the second line is random characters R,W and B输出
a line, all the R’s come first, the W’s come next, and the B’s come last.样例输入
10 WRRWRWBBRW样例输出
RRRRWWWWBB#include<stdio.h> int main() {int n;scanf("%d", &n);char a[500005];char r[500005], w[500005], b[500005];int i;int count = 0;int num = 0;int tmp = 0;scanf("%s", a);for (i = 0; i < n; i++){if (a[i] == 'R'){r[count++] = a[i];}if (a[i] == 'W'){w[num++] = a[i];}if (a[i] == 'B'){b[tmp++] = a[i];}}for (i = 0; i < count; i++){printf("%c", r[i]);}for (i = 0; i < num; i++){printf("%c", w[i]);}for (i = 0; i < tmp; i++){printf("%c", b[i]);}printf("\n");return 0; }
SWUST OJ492: 荷兰国旗问题相关推荐
- python单链表实现荷兰国旗问题_这道荷兰旗问题,我面试时遇到三次!
01.题目示例 "荷兰国旗问题" 是计算机科学中的一个经典题目,它是由Edsger Dijkstra提出的.荷兰国旗由红.白.蓝三色组成. 荷兰国旗问题:现在有若干个红.白.蓝三种 ...
- 荷兰国旗 Flag of the Kingdom of the Netherlands
问题描述:现有n个红白蓝三种不同颜色的小球,乱序排列在一起,请通过两两交换任意两个球,使得从左至右的球依次为红球.白球.蓝球.这个问题之所以叫做荷兰国旗,是因为将红白蓝三色的小球弄成条状物,并有序排列 ...
- Algorithm:C+语言实现之数组相关算法(和为定值的两个数、和为定值的m个数、荷兰国旗、长度为2n的洗牌算法、任意长度数组的洗牌算法)
Algorithm:C+语言实现之数组相关算法(和为定值的两个数.和为定值的m个数.荷兰国旗.长度为2n的洗牌算法.任意长度数组的洗牌算法) 目录 数组 1.寻找和为定值的两个数 2.和为定值的m个数 ...
- 算法练习day4——190321(小和、逆序对、划分、荷兰国旗问题)
归并排序快的原因: 后面的排序利用了前面排序的结果!!! 1.小和问题 在一个数组中, 每一个数左边比当前数小的数累加起来, 叫做这个数组的小和. 求一个数组的小和. 例子:[1,3,4,2,5] 1 ...
- leetcode 75. Sort Colors | 75. 颜色分类(荷兰国旗问题,快速排序)
题目 https://leetcode.com/problems/sort-colors/ 题解 快速排序3.0(随机快排+荷兰国旗技巧优化) 在arr[L-R]范围上,进行快速排序的过程: 1)在这 ...
- 【算法习作】荷兰国旗问题
1.问题描述: 我们将乱序的红白蓝三色小球排列成有序的红白蓝三色的同颜色在一起的小球组.这个问题之所以叫荷兰国旗,是因为我们可以将红白蓝三色小球想象成条状物,有序排列后正好组成荷兰国旗. 2. ...
- 荷兰国旗问题(分三块)
在说 "荷兰国旗" 问题之前,首先来看一个引例. 给定一个数组arr,和一个数num,请把小于等于num的数放在数组的左边,大于num的数放在数组的右边.要求额外空间复杂度O(1) ...
- 【算法】荷兰国旗问题
本文为博主九师兄(QQ:541711153 欢迎来探讨技术)原创文章,未经允许博主不允许转载. 文章目录 1.概述 2.问题一 2.1 暴力方法 2.2 双指针方法 1.2 问题二(荷兰国旗问题) 1 ...
- python单链表实现荷兰国旗问题_快速排序深入之荷兰国旗问题
一.序言 在使用partition-exchange排序算法时,如快速排序算法(即使选择了一个好的关键元素pivot values),我们往往面临一个很尴尬的境地--当排序对象中有很多重复的元素,pa ...
最新文章
- c语言定义字符类型变量的关键字,C语言数据类型
- MPB:南土所褚海燕组-小麦相关微生物的野外采样与样品保存
- volatile非原子性示例
- MIT人工智能独立设系!拆分EECS为EE、CS、AI+决策三部分,直接归学院管理
- win7命令行 端口占用 查询进程号 杀进程
- 期末计算机考试五五开要考多少分,大学平时分加上末考分过了多少算不挂科
- linux下面安装Matlab2017b、快捷键修改、修改背景颜色(转载+自己整理)
- UILabel设定行间距方法
- android 过滤数组中的重复元素,Flutter List数组避免插入重复数据的实现
- java 内部类传值_Java 封装(内部类)
- 【报告分享】直播电商生态进化论-2020直播电商行业研究报告.pdf(附下载链接)...
- win10系统中photoshop cs6中界面字体太小的解决方法
- 看看能不能发推广链接。。。。。
- 【SQL】连接 —— 内连接、外连接、左连接、右连接、交叉连接
- PHP全局变量与SESSION 漏洞(global 与 session)
- Leetcode Problem108
- 如何自己制作身份证扫描件?
- 【编译汇编链接】COFF文件及结构说明
- MySQLIntegrityConstraintViolationException异常处理
- 浏览器网页翻译插件选十大翻译器网页翻译插件