• 中文
    • English
  • 注册
  • 查看作者
    • 《算法第四版》课后练习题1.2.7答案

      习题1.2.7

      以下递归函数的返回值是什么?

       public static String mystery(String s) {
              int N = s.length();
              if (N <= 1) return s;
              String a = s.substring(0, N / 2);
              String b = s.substring(N / 2, N);
              return mystery(b) + mystery(a);
          }

      要点分析

      其实不难看出,该方法的作用就是将一个字符串倒序输出,比如传入“12345”,输出:“654321”

      编写一个测试类:

      public class Seven {
          public static void main(String[] args) {
              System.out.println(mystery("123456"));
          }
      
          public static String mystery(String s) {
              int N = s.length();
              if (N <= 1) return s;
              String a = s.substring(0, N / 2);
              String b = s.substring(N / 2, N);
              return mystery(b) + mystery(a);
          }
      }
      
      输出:
      654321

      参考答案

      返回值为字符串s的倒序值

    • 0
    • 0
    • 0
    • 1.8k
    • 请登录之后再进行评论

      登录

      赞助本站

      • 支付宝
      • 微信
      • QQ

      感谢一直支持本站的所有人!

      单栏布局 侧栏位置: