首页 > 其他 > 详细

字符串翻转

时间:2014-09-27 12:00:40      阅读:209      评论:0      收藏:0      [点我收藏+]

原文地址:http://blog.csdn.net/wangyuling1234567890/article/details/39610373

将字符串翻转,如下:

输入:Hi Welcome to cricode

输出:cricode to Welcome Hi

#include <iostream>

#include <string>
#include <stack>

using std::cout;
using std::endl;
using std::string;
using std::stack;


void main()
{
        string str("Hi Welcome to cricode");
	stack<char> cstack;
	stack<char> tmp;
	int index = 0;

	for (index = 0; index < str.size(); index++)
	{
		cstack.push(str[index]);
	}

	index = 0;
	while(!cstack.empty())
	{
		if (' ' == cstack.top())   // 事例代码,未对标点符号做判断
		{
			while(!tmp.empty())
			{
				str[index++] = tmp.top();
				tmp.pop();
			}
			str[index++] = ' ';
			cstack.pop();
		}
		else
		{
			tmp.push(cstack.top());
			cstack.pop();
		}
	}

	while(!tmp.empty())
	{
		str[index++] = tmp.top();
		tmp.pop();
	}

	cout<<str<<endl;

	return ;
}


字符串翻转

原文:http://blog.csdn.net/wangyuling1234567890/article/details/39610373

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!