您的位置:首页 > 编程语言 > Java开发

codingbat :recursion1:2(JAVA)

2016-01-01 13:27 555 查看

public int countX(String str) {

  if(str.length()<=1){

    if(str.equals("x"))

        return 1;

    else

        return 0;

  }

  else

    return countX(str.substring(0,1))+countX(str.substring(1,str.length()));

}

public int countHi(String str) {

if(str.length()<3){

   if(str.equals("hi"))

       return 1;

   else

       return 0;

}

else

   return countHi(str.substring(0,2))+countHi(str.substring(1,str.length()));

}

public String changeXY(String str) {

  if(str.length()<2){

     if(str.equals("x"))

        return "y";

     else

        return str;

  }

  else

     return changeXY(str.substring(0,1))+changeXY(str.substring(1,str.length()));

}

public String changePi(String str) {

  if(str.length()<3){

     if(str.equals("pi"))

        return "3.14";

     else

        return str;

  }

  else

  {

    if(str.substring(0,2).equals("pi"))

       return changePi(str.substring(0,2))+changePi(str.substring(2,str.length()));

    else

       return changePi(str.substring(0,1))+changePi(str.substring(1,str.length()));

  }

}

public String noX(String str) {

  if(str.length()<2)

  {

      if(str.equals("x"))

         return "";

      else

         return str;

  }

  else

  {

  if(str.substring(0,1).equals("x"))

        return noX(str.substring(1,str.length()));

  else

      return str.substring(0,1)+ noX(str.substring(1,str.length()));

  }

}

public boolean array6(int[] nums, int index) {

   if(nums.length<1)

      return false;

   if(index==nums.length-1)

   {

     if(nums[index]==6)

         return true;

     else

        return false;

   }

   else

   {

      if(nums[index]==6)

         return true;

       else

          return array6(nums,index+1);     

   }

 }

public int array11(int[] nums, int index) {

  if(nums.length<1)

     return 0;

  if(index==nums.length-1){

     if(nums[index]==11)

        return 1;

     else

        return 0;

     }

  else

    {

      if(nums[index]==11)

         return 1+ array11(nums,index+1);

      else

        return array11(nums,index+1);

    }

    

}

public boolean array220(int[] nums, int index) {

  if(nums.length<2)

     return false;

  if(nums[index]*10 ==nums[index+1])

        return true;

  else

  {

    if(index==nums.length-2)

        return false;

    else

        return array220(nums,index+1);

  }

}

public String allStar(String str) {

  if(str.length()<2)

     return str;

  else

    return str.substring(0,1)+"*"+allStar(str.substring(1,str.length()));

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: