zoukankan      html  css  js  c++  java
  • leetcode| Reverse String

    Write a function that takes a string as input and returns the string reversed.

    Example:
    Given s = "hello", return "olleh".

    题目:给你丫一字符串,你给我倒着写。。。。

    思路:我一开始想着这东西肯定是能解的,因为有StringBuilder的类有个反转的API,但是要知道,不能这么做,,,自己练习都还作弊是要遭雷劈的。。。于是,我第一时间想到,循环之,而后对称的替换之,但想着,不行,这样思路太简单了,代码一点观赏性都木有,我要搞个新鲜的,结合之前求n次幂的思路,搞了个递归版,反转一个字符串,我们首先可以将丫分两半,一半一半来,有没有奇数长的分不成两半怎么办,能怎么办啊,分三段呗,以下:

    public String reverseString(String s) {

      if(s == "" || s == null || s.length() <2 ){
        return s;
      }
      int len = s.length();

      if(len%2==0){
        return reverseString(s.substring(len>>1,len)) + reverseString(s.substring(0, len>>1));
      }else{
        return s.charAt(len-1)+reverseString(s.substring(len>>1,len-1)) + reverseString(s.substring(0, len>>1));
       }
    }

    完。。。。

  • 相关阅读:
    我的作业
    代码练习
    prority_queue 的用法 实例
    最短路问题专题
    键值对 Intent
    P103 任意两点之间的最短路问题 Floyd_warshall算法
    第6届山东省ACM省赛总结
    HDU 3247 Resource Archiver[AC自动机+最短路+dp]
    POJ 2778 DNA Sequence [AC自动机 + 矩阵快速幂]
    HDU 2896 病毒侵袭 [AC自动机]
  • 原文地址:https://www.cnblogs.com/wujunjie/p/5670312.html
Copyright © 2011-2022 走看看