一个将句子反转的程序

原创 2006年06月09日 13:44:00
/**
* 这是一个将句子反转的程序,你认为可以吗?
* @author micro_nucleus
* @version 1.0
*/
public class SentenceReversal{
public String doReversal(String oldString){
//将整个句子进行翻转
String str=reversalWord(oldString);
//进行单词分割
String[] sp=str.split("W");
String originalWord;
for(int i=0;i<sp.length;i++){
//将倒序的单词翻转回原始状态
originalWord=reversalWord(sp[i]);
str=str.replaceFirst(sp[i],originalWord);
}
return str;
}
private String reversalWord(String word){
StringBuffer buff=new StringBuffer();
java.util.Stack st=new java.util.Stack();
for(int i=0;i<word.length();i++){
st.push(word.substring(i,i+1));
}
while(!st.isEmpty()){
buff.append(st.pop());
}
return buff.toString();
}
public static void main(String[] args) {
SentenceReversal app=new SentenceReversal();
String originalSentence="这是一个将句子反转的程序,你认为可以吗?";
String newSentence=app.doReversal(originalSentence);
System.out.println(newSentence);
originalSentence="How do you do?haha. this is a test,for test regex.";
newSentence=app.doReversal(originalSentence);
System.out.println(newSentence);
String x=null;
System.out.println(x.equals(""));
}
}

相关文章推荐

21 反转句子顺序

前言本博文部分图片, 思路来自于剑指offer 或者编程珠玑问题描述思路对于这个问题, 书中给出了一种思路, 我思考了一种思路思路一 : 首先将整个句子反转一下, 然后在将句子中的每个词翻转一下 比...

反转句子单词顺序

输入一句英文,单词用空格隔开,要求在主函数里调用函数reverse()将这句话的单词从后向前翻转过来。 要求:必须使用函数void reverse(char A[]) { }思路:可以先反转整个句子...

面试题准备(01)-反转句子中单词的顺序

这道题查了很久的资料,最后还是找同学发现了问题。一开始是 char *a="I am a boy!"这样赋值的,这是一个字符串常量,其在程序中是存放在常量区的,其值是不能改变的。 一个已经犯了两次的错...

字符串左旋 VS 反转英文句子

字符串左旋问题 解法一:可以用三部反转法,把一个字符串”abcdefgh”左旋三个字符,分成两部分,”abc”,”defgh”。分别旋转两部分,得到”cbahgfed”,在总的反转得到”defgh...

每日一题2:反转英文句子

反转英文句子的意思是将句子中按顺序排好的单词的顺序颠倒过来,例子如下: 输入: wo shi zhong guo ren 输出: ren guo zhong shi wo 直观的解法是先将每个单...

算法面试题之句子反转

小米2017年校园招聘题“句子反转”

java字符串反转,逆序输出(句子反转,单词不反转)

如果输入:My name is Xiaogang 输出:Xiaogang is name My 代码具有去句子前后空格功能,并且有注释 class String2Test { public s...

字符串反转C++小程序

  • 2010年05月10日 22:27
  • 462B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一个将句子反转的程序
举报原因:
原因补充:

(最多只允许输入30个字)