题解 | #字符串逆序#

字符串逆序

https://ac.nowcoder.com/acm/problem/14310

利用递归思想:将字符串分为 1~N-1 个和第 N 个两部分,用N+(1~N-1)进行反转;
                       再将1~N-1分为 1~N-2 个和第 N-1 个两部分,用N+(1~N-2)进行反转;
                         ...... 
                        以此类推,进行递归
这是递归方法:
1.递归公式为:N+reverse(N-1)  ;注意N是字符,需要用到charAt()。
2.递归出口,当到了第0个位置的字符时,就不需要在反转了,直接打印即可。
    static String reverse(String src,int end){
        if(end == 0){
            return ""+src.charAt(0);//此为递归出口
        }
        return src.charAt(end)+reverse(src,end-1);//次卫递归公式
    }
主函数利用键盘输入字符串,因为字符串从0开始标位置的,所以需要用到 length-1
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        String src = scan.next();//键盘输入一个字符串
        System.out.println(reverse(src,src.length()-1));//注意end范围,以防数组越界
    }



全部评论

相关推荐

06-07 19:59
门头沟学院 C++
补药卡我啊😭:都快15年前的了还在11新特性
你的简历改到第几版了
点赞 评论 收藏
分享
06-26 17:24
已编辑
宁波大学 Java
迷失西雅图:别给,纯kpi,别问我为什么知道
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务