面试题不开辟临时空间,实现以单词为单位反转字符串

mmorss 2013-09-03 05:40:35
public class TEst {

/**
* @param args
*/
public static void main(String[] args) {
char[] chs = { '1', '2', '3', ' ', '4', '5', '6', ' ', '7', '8', '9','\n'};
System.out.println(chs);
reverserword(chs);
System.out.println(chs);
}

private static void reverserword(char[] chs) {
int a = 0, b = 0;
char temp;
for (int i = 0; i < chs.length; i++) {
if (chs[i]==' '||chs[i]=='\n'||i==chs.length-1) {
for (int j = a; j < b; j++) {
if(j<(a+b)/2){
temp = chs[j];
chs[j] = chs[b - j + a-1];
chs[b - j + a-1] = temp;
}
}
a = b+1;
b++;
} else {
b++;
}
}

}

}
...全文
63 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

80,350

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧