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));
       }
    }

    完。。。。

  • 相关阅读:
    call、apply、bind函数的理解以及手写。
    父div里两个子div(inline-block),为什么两个子div中间会有小缝隙,如何解决?
    手写柯里化
    arguments的理解
    New
    BFC
    useCallBack和useMemo的用法
    观察者模式和发布订阅模式
    grid布局
    Android常见输入法的包名和主类名
  • 原文地址:https://www.cnblogs.com/wujunjie/p/5670312.html
Copyright © 2011-2022 走看看