您的位置:首页 > 其它

字符串逆序

2015-10-18 19:23 483 查看
中国移动杭州研究院测试工程师的程序题,这道题比较简单,对于我们这种小白再适合不过啦,于是我们三个一个人用C++写的,一个人用JAVA写的,我用PYTHON写的,嘿嘿当然还是由借助,真希望自己可以到不需要‘借助’的那一天,虽然很遥远,但是每天进步一点点嘛。好了,不废话了,原题是给你一个字符串,让你将这个字符串逆序,但是要保持每个单词还是正序的,例如:‘this is a test’将转换成‘test a is this’

PYTHON:(因为python有很多自己的函数以及split方法,于是代码很简单)

import re
astring = raw_input()
revwords = ' '.reversed(astring.split())
print(revwords)


JAVA:

package com.ligen.main;

import java.util.Scanner;
import java.util.Stack;
import java.util.regex.Pattern;

public class test08 {
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
String testStr  = sc.nextLine();
Pattern pattern = Pattern.compile("[, .]+");
String[] ss = pattern.split(testStr);
getReverse(ss);
}

public static void getReverse(String[] str){
for(int i = str.length-1;i>=0;i--){
System.out.print(str[i]+" ");
}
}
}
}


C++:(C++就是将各个字符串中的单词入栈再出栈)

#include<iostream>
#include<stack>
#include<string>

using namespace std;

void main()
{
stack<string> sta;
string s;
while(cin>>s)
{
if(s.empty())
break;
sta.push(s);
}
//cout<<s<<" ";
while(!sta.empty())
{
cout<<sta.top()<<" ";
sta.pop();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: