比较两个字符串中的字符,并交换
来源:互联网 发布:linux 程序运行权限 编辑:程序博客网 时间:2024/04/30 10:49
题目:比较两个长度相等的字符串,判断对应位置是否相等,求出交换不等的字符交换后的距离
例如:
asdfgh
qsdfdd
不等位置:0 4
交换后
gsdfah
dssfqd
距离还是5
void solve() { int len=in.nextInt(); char[] s = in.nextToken().toCharArray(); char[] t = in.nextToken().toCharArray(); boolean First=false; boolean Second=false; int left=-1; int right=-1; for(int i=0;i<len;i++){ int temp1=compare(s[i],t[i]); int temp2=compare(s[len-1-i],t[len-1-i]); if(temp1==-1 && temp2==-1 && i!=(len-1-i)){ if(compare(s[i],t[len-1-i])==1 && compare(s[len-1-i],t[i])==1){ out.println(len-2-2*i); out.println(i+" "+ (len-1-i)); }else if(compare(s[i],t[len-1-i])==1 && compare(s[len-1-i],t[i])==-1 || compare(s[i],t[len-1-i])==-1 && compare(s[len-1-i],t[i])==1){ out.println(len-1-2*i); out.println(i+" "+ (len-1-i)); }else if(compare(s[i],t[len-1-i])==-1 && compare(s[len-1-i],t[i])==-1){ out.println(len-2*i); out.println(i+" "+ (len-1-i)); } }else{ out.println(-1); } } } int compare(char str1,char str2){ if(str1==str2){ return 1; }else{ return -1; } }
0 0
- 比较两个字符串中的字符,并交换
- 字符串hash 交换两个字符
- 比较出两个字符串数组中的不同的数据 并将其转化成为字符串
- 交换两个字符串
- 交换两个字符串
- 交换两个字符串
- 交换两个字符串内容
- 连接两个字符串中的不同字符-LintCode
- 两个字符串比较,取出重复字符个数。 (原创)
- PHP 如何快速比较两个字符串中字符完全相同?
- 比较组成两个字符串的字符是否一样
- 比较两个字符串中字符是否相等(变位词-anagram)?
- 比较两个字符串并返回(第十七周上机任务)
- 第17周项目2--比较两个字符串并返回
- C比较两个字符串中的不同的字符串
- 比较两个字符数组
- 比较两个字符产
- 比较两个字符数组
- 线程问题3(synchronized,wait,notify,notifyAll,类锁,对象锁)
- c++读取注册表详解
- html5 - jquery mobile 学习文档
- 从新开始写博客
- mina学习2
- 比较两个字符串中的字符,并交换
- c++ iterator
- **C++和JAVA中的多态区别以及与此相关的重载、覆盖和隐藏*
- 汇编中的通用数据传送类指令
- Jvm启动参数整理
- Android学习笔记(3)——按钮点击注册事件的四种写法
- JSON解析关联类型发生死循环 There is a cycle in the hierarchy!
- Node.js一些乱七八糟的知识
- Android编程之Bitmap图片压缩大小