编程:使用递归方式判断某个字串是否回文(Palindrome)
Answer:
import java.util.Scanner; public class Palindrome { private static int len;//全局变量整型数据 private static char p[];//全局变量数组public static void main(String args[]) {Scanner sc=new Scanner(System.in);String str; str=sc.nextLine(); len=str.length();//令len的值为数组长度 p=str.toCharArray();//将字符串转换为相应数组,用于比较对应位置字符是否相等。//从字符数组第一个函数开始比较。因为第一个字符下标为0,所以以0为参数:if(isPalindrome(0)) if(isPalindrome(0)) System.out.println(str+" is a palindrome!"); else System.out.println(str+" is not a palindrome!");}public static boolean isPalindrome(int n) { if(n>=len/2) return true; //递归结束的条件之1:整个字符串的字符都一一对比完了,没有出现字符不等的情况,故该字串是回文。 else if(p[n]==p[len-1-n]) return isPalindrome(n+1); else return false; //递归结束的条件之2:字符串的字符一一对比过程中,出现字符不等的情况,故该字串不是回文。 } //注:满足任何一个递归结束条件,则结束递归了。这时候系统就着手于一层一层向上返回数据。 }
转载于:https://www.cnblogs.com/6354-aa/p/5995221.html
编程:使用递归方式判断某个字串是否回文(Palindrome)相关推荐
- c语言用递归法判断回文字符串,递归方式判断一个字符串是否为回文字符串
/* * 递归方式判断一个字符串是否为回文字符串 */ public class PartitionTest{ public static void main(String[] args) { Str ...
- c语言判断回文字符串递归,用递归实现判断一个字符串是否为回文串
//用递归实现判断一个字符串是否为回文串 import java.util.Scanner; public class Palindrome { //判断是否为回文串 in型参数代表字符串起止位置 p ...
- 用递归方式判断字符串是否是回文
题目要求:使用递归方式判断某个字串是否是回文( palindrome )回文"是指正着读.反着读都一样的句子.比如"我是谁是我" 设计思想:首先能实现可输出任意字符串,然 ...
- 【Python】Python实验:回文是一个正向和逆向都相同的整数,如123454321、463364、9889。编写函数判断一个整数是否是回文数。
回文是一个正向和逆向都相同的整数,如123454321.463364.9889.编写函数判断一个整数是否是回文数. 算法源码 def huiwen(n):if n==n[::-1]: ##正序和倒序是 ...
- 回文判断 【问题描述】 回文是正读和倒读都一样的句子。读入一个最大长度不超过50个字符的句子,判断其是否是回文。 【输入形式】 输入一个最大长度不超过50个字符的句子 【输出形式】 Yes/No
回文判断 [问题描述] 回文是正读和倒读都一样的句子.读入一个最大长度不超过50个字符的句子,判断其是否是回文. [输入形式] 输入一个最大长度不超过50个字符的句子 [输出形式] Yes/No [输 ...
- 判断一个数字是否为回文数字
下面来介绍一下如何通过C语言编程来实现判断一个数字是否为回文数字的求解,具体如下: 问题描述:判断一个数字是否为回文数字,如12321为回文数字,123123不是回文数字. #include<s ...
- C语言判断一个数是否是回文数
C语言判断一个数是否是回文数 #include <stdio.h> int main(){int num, s, y = 0;printf("请输入一个数字: ");s ...
- C++判断一个数是否为回文数palindrome的算法(附完整源码)
C++判断一个数是否为回文数palindrome的算法 C++判断一个数是否为回文数palindrome的算法完整源码(定义,实现,main函数测试) C++判断一个数是否为回文数palindrome ...
- Java是否为回文_java语言判断一个数字是否为回文数字
判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向 ...
最新文章
- vCenter 5.5升级到vCenter 6.0实战指导
- 【数据结构与算法】之深入解析“单词接龙II”的求解思路与算法示例
- 分布式离线计算—MapReduce—为什么被淘汰了?
- 使用java.util.concurrent包处理多线程
- 数据结构----快速排序
- 常用数据库的分页实现
- 编译安装PCL点云库,Kinect2驱动,乐视Astra相机驱动
- 今天生日,高興!!!
- 修改tomcat的8080端口
- VI SNMPRRDTool
- EasyUI - Layout 布局控件
- html mysql留言板_【网页留言板制作】HTML + CSS + PHP + MySQL 实战
- AICC 2021,这些AI热门话题你一定要知道
- java连接mongo数据库,并执行db.runCommand命令
- 树莓派4B(ubuntu)无线网络配置
- Windos测试IP和端口是否能访问
- maya! board_Maya"普天同庆"病毒解决方案来了
- 小程序 订单倒计时系列
- 一看就懂的网络协议五层模型(一)
- 2021-08-23 FM24C04写入数据时,跨页会导致指针指向本页的起始地址
热门文章
- 每天进步一点点《ML - 高斯混合模型》
- 漫步微积分三十六——曲面的面积
- Mac下安装caffe(cpu-only)
- mysql 存储过程 sql变量_SQL基础-变量 存储过程和函数
- 从Ubuntu 14 04 LTS版升级到Ubuntu 16 04 LTS
- 《汇编语言》王爽—实验五详解
- toj 4601 好老师
- ZZULIOJ21级新生周赛(1)——命题人:朱会东老师——2822: 探姬粉丝众多
- mybitsplus的idworker应java什么类型_MyBatisPlus学习整理(一)
- srcnn 双三次插值_用于数字成像的双三次插值技术