2012-03-28 2 views
1

Как, я хочу сделать функцию, которая может принимать 2 строки в качестве ввода, а затем выводить меня, являются ли строки циклическими или нет? Например, CAR, ARC, RCA представляют собой циклические вращения самих себя.Каким будет кодирование циклической ротации в PHP?

+0

Я попытался найти решение, m =, но я не знаю, почему середина не работает –

+0

Я новичок, который не знает всех функций, но мой ум говорит: сначала мы должны проверить первый символ на последний и второй символ, затем выполните аналогичную функцию. Но у вас нет точной идеи, как его реализовать. –

+0

Попробуйте 'for' loop. – safarov

ответ

2
<?php 
function cyclic($first, $second) { 
    for($i = 0, $j = strlen($first); $i < $j; $i ++) { 
     $cycled = substr($first, $i) . substr($first, 0, $i); 
     if($cycled === $second) { 
      return true; 
     } 
    } 
    return false; 
} 

var_dump(cyclic('CAR', 'ARC')); 

Это довольно просто, действительно. Сначала вычислите «циклическую версию». Если циклическая версия равна второй строке, все готово. Если это не так, попробуйте еще раз. О, и вы можете проверить, как substr работает в руководстве по PHP.

+0

Большое спасибо Берри. –

Смежные вопросы