ホームページ > バックエンド開発 > PHPチュートリアル > 解決策 - Qunar.com の筆記試験問題 - これは中国語の単語の分割ですか?

解決策 - Qunar.com の筆記試験問題 - これは中国語の単語の分割ですか?

WBOY
リリース: 2016-06-23 14:24:19
オリジナル
1144 人が閲覧しました

Qunar.com 筆記テスト 中国語単語セグメンテーション プログラム

Qunar.com 筆記テストに参加しました
質問の主なアイデア: asp.php.jsp.javascript 言語制限なし javascript.jsp.php.asp に変換します
ユーザーが入力した文字列(「.」で区切られた複数の文字が含まれます)を指し、この「.」を区切って元の文を反転するプログラムを書きます。

ディスカッションへの返信(解決策)

配列に変換して逆にできるようです。

問題は「。」で区切る方法です。 2 点間の文字が配列単位に変換されます。マスターが解決策を求めています

配列に変換してから逆順に変換できるようです。
問題は、「.」で区切る方法です。 2 点間の文字が配列単位に変換されます。

$s = 'asp.php.jsp.javascript';echo join('.', array_reverse(explode('.', $s)));
ログイン後にコピー
ログイン後にコピー
javascript.jsp.php.asp

$s = 'asp.php.jsp.javascript';echo join('.', array_reverse(explode('.', $s)));
ログイン後にコピー
ログイン後にコピー
javascript.jsp.php.asp
モデレーターはとても寛大です、私はまだ php を学ぶ必要があるようです!ありがとう!

<script type="text/javascript">var a='asp.php.jsp.javascript';alert(a.split('.').reverse().join('.'));</script>
ログイン後にコピー

あなたが「何度も失敗する」タイプでないなら、面接に行く前に少し練習することをお勧めします、そうしないと、失敗に直面し続けて自信を失います

これが根拠ですか?

システム組み込み機能以外を使用して実装する必要があると推定されています

これが根拠ですか?
そうですね、実は当時、自分で関数を書いて実装するか何かで悩んでいたんです

システム組み込み関数以外を使って実装するしかなかったんですね
で、その時に思いついたのがこれです時間です

あなたが「戦い続ける」タイプではないなら、面接に行く前に少し練習した方が良いです。そうしないと、何度も失敗に直面して自信を失います
ありがとう!

array_reverse を使わずに、システム組み込み関数以外でも実装できます。

function reverse_str($s){$r=explode('.', $s);$c=count($r);$i=0;foreach($r as $k=>$v){		if($i<$c/2){		$r[$k]=$r[$c-1-$i];//最前面的键值等于最后面的值		$r[$c-1-$i]=$v;//最后面的键值等于最前面的值,以此类推交换键值		$i++;	}else{	break;	}}	return join('.', $r);}//测试$s="1.2.3.4.5.6";echo reverse_str($s);
ログイン後にコピー


お役に立てば幸いです

array_reverse は、次のように記述してください。 3Q

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート