标签:字符 returnChar String int s1 pop length 字符串 移动
(一) 题目 : 字符串中的字符移动
描述 : 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变
思路:先将整个字符串翻转,再翻转每一个单词
运用栈的特性 进行入栈和出栈
(二) 代码及测试
package com.example.offer; import java.util.Stack; /** *题目: 字符串中的 字符移动 *描述: 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变 * *思路: * 先将整个字符串翻转,再翻转每一个单词 * 运用栈的特性 进行入栈和出栈 * @author zhangchaocai * @create 2020-06-28 11:17 */ public class offer2 { public static void main(String[] args) { String s = "how are you I am fine"; String s1 = turnWord(s); System.out.println("反转后的字符为:" + s1); } private static String turnWord(String s) { Stack<Character> stack = new Stack<>(); String returnChar = ""; for (int i = 0; i < s.length() ; i++) { stack.push(s.charAt(i)); } for (int i = 0; i < s.length() ; i++) { Character pop = stack.pop(); returnChar += pop; } String[] s1 = returnChar.split(" "); returnChar = ""; for(int i = 0 ; i < s1.length ; i++){ for (int j = 0; j < s1[i].length() ; j++) { stack.push(s1[i].charAt(j)); } for (int j = 0; j < s1[i].length() ; j++) { Character pop = stack.pop(); returnChar += pop; } if( i != s1.length - 1){ returnChar += " "; } } return returnChar; } }
(三) 运行结果
又下起了小雨
标签:字符,returnChar,String,int,s1,pop,length,字符串,移动 来源: https://www.cnblogs.com/misscai/p/13206330.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。