再帰的処理を使って文字列を逆にする方法

解決


白白  2006-02-13 18:51:40  No: 60708  IP: 192.*.*.*

ある文字列codeを再帰的処理を使用して逆順にしたいのですが方法が思いつきません。
例えば、
code[] = "abcdefg" ;
と宣言して再帰的処理を行うとcodeの中身がgfedcbaとなるようにしたいのです。

どうか宜しく御願い致します。

編集 削除
DD.  2006-02-13 21:26:18  No: 60709  IP: 192.*.*.*

再帰を使う必要はないと思いますが。

自分なりにまず作成したコードを提供してから、わからないところの要点をまとめて投稿するのがよいようです。

丸投げはいけません。

void Reflexive( char* str, int begin, int end )
{
  if ( begin >= end ) return;
  char tmp = str[begin];
  str[begin] = str[end-1];
  str[end-1] = tmp;
  return Reflexive( str, begin+1, end-1 );
}

編集 削除
επιστημη  2006-02-13 22:12:40  No: 60710  IP: 192.*.*.*

std::string rev(const std::string& str) {
  return str.size() == 1 ? str : rev(str.substr(1)) + str[0];
}

編集 削除
白白  2006-02-14 14:54:24  No: 60711  IP: 192.*.*.*

DD.様、επιστημη様返信有難う御座います。

今度からはもう少し考える時間を増やそうと思います。
本当に有難う御座いました。

編集 削除