程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 小算法:遞歸實現回文判斷,算法遞歸回文判斷

小算法:遞歸實現回文判斷,算法遞歸回文判斷

編輯:C#入門知識

小算法:遞歸實現回文判斷,算法遞歸回文判斷


static void Main(string[] args)
        {
            DateTime dt1 = DateTime.Now;

            string text = "abcdedcba";
            bool bYes = Recv(text);
            Console.Write("{0}:{1}回文!", text, bYes ? "是" : "不是");

            DateTime dt2 = DateTime.Now;
            Console.Write("耗時:{0}毫秒", (dt2 - dt1).TotalMilliseconds.ToString());
            Console.ReadLine();
        }

        private static bool Recv(string text)
        {
            string head = text.Substring(0, 1);
            string end = text.Substring(text.Length - 1, 1);
            if (head == end)
            {
                if (text.Length == 1)
                    return true;
                string t = text.Substring(1, text.Length - 2);
                return Recv(t);
            }
            return false;
        }

  


遞歸判斷回文串的問題

#include <iostream.h>
#include <string.h>
int huiwen(char s[],int len,int i)
{
if(i>(len-1)/2)
{
if(s[i]==s[len-1-i])
return 1;
else
return 0;
}
else
{
if(s[i]==s[len-1-i])
return huiwen(s,len,i+1);//如果滿足回文條件才遞歸
else
return 0;
}
}
int main()
{
char s[20];
int len;
cin>>s;
len=strlen(s);
cout<<huiwen(s,len,0);
}
 

C語言用遞歸判斷數字是否為回文數

首先求出數字的長度n,
然後判斷第1位和第n位是否相等
第i位和第n+1-i位是否相等。對i循環

單獨寫一個函數求出這個數字第i位的大小
int GetI(int i,int number){
if(i==1)
return number%10;
return GetI(i-1,number/10);
}
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved