字符串反转

编写一段用最小代价实现将字符串完全反序, 如 将 “abcdefghjk” 转换成 “kjhgfedcba”. 不使用内置函数

方法一:利用字符串的拼接方法,把后遍历出来的放在前面即可实现反转

    function reverse()
    {
        $s = 'abcdefghjk';
        $o = '';
        $i = 0;
        while(isset($s[$i]) && $s[$i] != null) {
            $o = $s[$i++].$o;
        }
        echo $o;//kjhgfedcba
    }

方法二:把字符串打散成数组,

    function reverse()
    {
        $s = 'abcdefghjk';
        $strArr = str_split($s);
        $o = '';
        for($i=count($strArr) - 1; $i>=0;$i--){
            $o.=$strArr[$i];
        }
        echo $o;
    }

方法三:利用递归的方法,类似与二分查找的折半思想

function reverseRecursive()
    {
        $s = 'abcdefghjk';
        $forNum = ceil(strlen($s)/2);
        $strlen = strlen($s);
        for($i=1; $i<= $forNum; $i++){
            if($i <= $strlen-$i) {
                $tmp = $s[$i - 1];
                $s[$i - 1] = $s[$strlen - $i];
                $s[$strlen - $i] = $tmp;
            }
        }
        return $s;
    }

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容