Java判断一个字符串能否在顺序重组后成为回文串
2015-12-09 13:59
736 查看
public class Test2 {
public static void main(String args[]) {
int result = huiwen("level");
if(result == 1) {
System.out.println("是回文串 ");
} else {
System.out.println("不是回文串 ");
}
}
private static int huiwen(String str) {
int len = str.length();
int i, j, x = 1, m = 0;
char[] strs = str.toCharArray();
if (len % 2 == 0) {
for (i = 0; i < len; i++) {
int sum = 0;
for (j = 0; j < len; j++) {
if (strs[i] == strs[j])
sum++;
}
if (sum % 2 != 0) {
x = 0;
break;
}
}
if (x == 0)
return 0;
else
return 1;
} else {
for (i = 0; i < len; i++) {
int sum = 0;
for (j = 0; j < len; j++) {
if (strs[i] == strs[j])
sum++;
}
if (sum % 2 != 0) {
m++;
}
}
if (m > 1)
return 0;
else
return 1;
}
}
}
public static void main(String args[]) {
int result = huiwen("level");
if(result == 1) {
System.out.println("是回文串 ");
} else {
System.out.println("不是回文串 ");
}
}
private static int huiwen(String str) {
int len = str.length();
int i, j, x = 1, m = 0;
char[] strs = str.toCharArray();
if (len % 2 == 0) {
for (i = 0; i < len; i++) {
int sum = 0;
for (j = 0; j < len; j++) {
if (strs[i] == strs[j])
sum++;
}
if (sum % 2 != 0) {
x = 0;
break;
}
}
if (x == 0)
return 0;
else
return 1;
} else {
for (i = 0; i < len; i++) {
int sum = 0;
for (j = 0; j < len; j++) {
if (strs[i] == strs[j])
sum++;
}
if (sum % 2 != 0) {
m++;
}
}
if (m > 1)
return 0;
else
return 1;
}
}
}
相关文章推荐
- 【Java】不用循环语句如何输入打印数组元素
- JAVA获取当前系统时间System.currentTimeMillis()
- Java中的增补字符
- java多线程之模拟死锁
- Java代码中的字符编码转换
- Java学习笔记----面对对象
- java 设置特定时间
- Maven搭建SpringMVC+Hibernate项目详解
- quarzy实现定时任务以及和spring整合
- 深入理解Java:SimpleDateFormat安全的时间格式化
- Maven搭建SpringMVC+Hibernate项目详解
- 使用 IntelliJ IDEA 开发一般 Java 应用程序时配置 Allatori 进行代码混淆
- Spring4.2.3 +Struts2.3.24 +Hibernate4.3.11配置过程
- Spring mvc 返回json 字符串的其他方式
- springmvc和js前端的数据传递和接收方式
- selenium-server实现在不同PC上执行多线程并发测试
- spring mvc 的jpa JpaRepository数据层 访问方式汇总
- 深入理解Java:注解(Annotation)自定义注解入门
- Struts2学习——(九)Struts2标签III
- 这一段时间学习JAVA的回顾总结1