zoukankan      html  css  js  c++  java
  • 用递归判断回文序列

    判断回文序列

    一,题目:判断输入的字符串是否为回文系列。

    二,设计思路:

    1,初始判断若字符串的长度为0或1,一定是回文序列直接返回退出。

    2,写终止条件,如果最后剩余一个,则是回文序列返回退出。如果是两个,判断他俩是否相等若相等则f为1否则f为0,返回退出。

    3,写一般情况,若收尾相等则n加1,调用自身,如果中途比较前后不等则f为0,返回退出。

    三,源代码:

    import java.util.Scanner;
    
    public class Huiwen {
        static char []a=new char[1000];
        static String str;
        static int f=0;
        static int n=0;
        static Scanner sc=new Scanner(System.in);
        public static void main(String[] args) {
            str=sc.nextLine();
            a=str.toCharArray();
            huiWen(a,n);
            if(f==0) {
                System.out.println(str+" : "+"不是回文序列");
            }
            else {
                System.out.println(str+" : "+"是回文序列");
            }
        }
        public static void huiWen(char[] a,int n) {
            if(a.length==1||a.length==0) {
                f=1;
                return ;
            }
            if(a.length-2*n-1==1) {
                f=1;
                return ;
            }
            if(a.length-2*n-1==2) {
                if(a[n]==a[a.length-n-1]) {
                    f=1;
                    return ;
                }
                else {
                    f=0;
                    return ;
                }
            }
            
            if(a[n]==a[a.length-n-1]) {
                n=n+1;
                huiWen(a,n);
                
            }
            else {
                f=0;
                return ;
            }
            
        }
    
    }

    四,测试结果

     

     

     五,结论:

    递归三要素:

    1,明确终止条件,给出递归结束是的处理办法。

    2,提取问题结果,减小问题规模。

    3,调用自身。

  • 相关阅读:
    MySQL数据库与表的增删改查
    JavaScript相关基础知识点
    用jquery制作一个二级导航下拉菜单
    jQuery如何获取元素及选择器的参考
    Trapping Rain Water
    First Missing Positive
    Combination Sum II
    Combination Sum
    vector的几小点
    C中字符结尾‘’的作用
  • 原文地址:https://www.cnblogs.com/20183544-wangzhengshuai/p/11574173.html
Copyright © 2011-2022 走看看