[解決済み】面接の質問です。ある文字列が他の文字列の回転であるかどうかのチェック [終了しました]
2022-04-04 10:16:22
質問
今日、私の友人がソフトウェア開発者のポジションの面接で次のような質問をされました。
与えられた2つの文字列
s1
と
s2
をどのように確認するのでしょうか?
s1
は
回転
のバージョンです。
s2
?
例
もし
s1 = "stackoverflow"
の場合、その回転したものを以下に示します。
"tackoverflows"
"ackoverflowst"
"overflowstack"
ここで
"stackoverflwo"
は
ではない
を回転させたものです。
という答えが返ってきました。
テイク
s2
の部分文字列である最長の接頭辞を求めます。s1
それが回転のポイントになります。その点を見つけたらs2
を得るために、その点でs2a
とs2b
であれば、単にconcatenate(s2a,s2b) == s1
私や友人には良い解決策に見えるのですが。しかし、面接官はそうではないと考えた。彼はもっと簡単な解決策を求めました。あなたはこれをどのように行うか教えてください。
Java/C/C++
?
よろしくお願いします。
どのように解決するのですか?
まず、以下のことを確認してください。
s1
と
s2
が同じ長さであることを確認します。次に
s2
の部分文字列です。
s1
と連結された
s1
:
algorithm checkRotation(string s1, string s2)
if( len(s1) != len(s2))
return false
if( substring(s2,concat(s1,s1))
return true
return false
end
Javaでは
boolean isRotation(String s1,String s2) {
return (s1.length() == s2.length()) && ((s1+s1).indexOf(s2) != -1);
}
関連
-
[解決済み] java.sql.SQLException: ORA-00933: SQL コマンドが正しく終了していません。
-
[解決済み] Java Genericメソッドをstaticにするには?
-
[解決済み] Oracle DB : java.sql.SQLException: 閉じた接続
-
[解決済み] Androidのコールバックとは何ですか?重複
-
[解決済み] java.lang.ClassCastException: java.lang.Long を java.lang.Integer にキャストできない(java 1.6
-
[解決済み] Java: getInstanceとStaticの比較
-
[解決済み] 文字列の巻き方
-
[解決済み] JavaでStringが数値かどうかを確認する方法
-
[解決済み] C++で文字列が文字列を含むかどうかをチェックする
-
[解決済み] Intel CPU の _mm_popcnt_u64 で、32 ビットのループカウンターを 64 ビットに置き換えると、パフォーマンスが著しく低下します。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] getContentPane()は具体的に何をするのですか?
-
[解決済み] javaで部分クラスを実装する方法
-
[解決済み] Oracle DB : java.sql.SQLException: 閉じた接続
-
[解決済み] javacが「using unchecked or unsafe operations」という警告を出す原因は何ですか?
-
[解決済み] Androidのコールバックとは何ですか?重複
-
[解決済み] javaでAnnotation Inheritanceのようなものはあるのでしょうか?
-
[解決済み] SubclipseとJavaHLのインストールで頭を悩ます
-
[解決済み] Eclipseでクラスとそれに対応するファイルの名前を変更する方法は?
-
[解決済み] java.sql.SQLRecoverableException: IO エラーです。NL Exceptionが発生しました
-
[解決済み] Pythonで文字列が繰り返されるかどうかを判断するにはどうすればよいですか?