要求 判断两个字符串是否是回环变位
  1. import edu.princeton.cs.algs4.StdOut;
  2. public class Ex1_2_6 {
  3. private static boolean circular(String s, String t) {
  4. return (s.length() == t.length() && (s + s).indexOf(t) > 0);
  5. }
  6. public static void main(String[] args){
  7. if(circular("ACTGACG","TGACGAC")){
  8. StdOut.println("yes");
  9. }else{
  10. StdOut.println("No");
  11. }
  12. }
  13. }

要点:

indexOf()在找不到子串是返回-1,因此(s.length() == t.length() && (s + s).indexOf(t) > 0)一句话即可判断是否是回环变位