0
我实现奎因McClusky逻辑最小化,现在试图优化这段代码:优化时间复杂度 - 奎因McClusky
public int[] differsMaxOneChar(String a, String b) {
debug.println("Comparing " + a + " to " + b);
int[] returnValue = {1, 0};
boolean differs = false;
for (int i = 0; i < a.length(); i++) {
if (!(a.charAt(i) == b.charAt(i))) {
if (differs) {
returnValue[0] = 0;
break;
} else {
differs = true;
returnValue[1] = i;
}
}
}
return returnValue;
}
任何帮助就这将是非常赞赏。
字符串a和b的长度始终相同。方法检查它们是否恰好在一个位置上不同。 a和b由'0','1'和'X'组成。没有其他的。