有没有一种方法可以使用OutOfOrder的代码,使InOrder像OutOfOrder一样简单?

问题描述

我很难尝试使用逻辑规则并使用OutOfOrder代码来使Inorder像OurOfOrder一样简单。

public class Inorder {
//Don't change this
public boolean OutOfOrder(int n1,int n2,int n3) {
return (n1 > n2) || (n2 > n3);
}

//The original and messy Inorder,leave this as an example of what not to do
public boolean inorder(int n1,int n3) {
if (n2 > n1) {
  if (n3 > n2) {
    return true;
  } else {
    return false;
  }
} else if (n2 == n1) {
  if (n3 == n1) {
    return true;
  } else {
    return false;
  }
} else {
  return false;
}
}

//The new and improved Inorder for part 5,call OutOfOrder
public boolean inorder5a(int n1,int n3) {
return true; //replace this
}

//The newer and improved Inorder for part 6,inline
public boolean inorder5b(int n1,int n3) {
return true;//replace this
}

}

解决方法

数字似乎是有序或无序的,没有第三种选择。

因此您可以将inOrder实施为:

public boolean inOrder(int n1,int n2,int n3) {
    return !outOfOrder(n1,n2,n3);
}
,

我会说:(n2 >= n1 && n3 >= n2)