指定された 3 つの文字列の部分文字列を回文文字列に連結できるかどうかをチェックします
回文は、コンピューター サイエンスとプログラミングにおける興味深いトピックです。回文とは、スペース、句読点、大文字小文字を無視して、前から後ろでも後ろから前でも同じように読まれる一連の単語、語句、数字、またはその他の文字です。この記事では、与えられた 3 つの文字列の部分文字列を連結して回文を形成できるかどうかを判断する方法という、ユニークな問題を検討します。この質問は面接でよくある質問であり、文字列操作、ハッシュ、動的プログラミングなどのさまざまな手法を使用して解決できます。
###問題文###3 つの文字列が与えられた場合、タスクは、指定された各文字列から部分文字列を選択し、それらを連結して回文を形成できるかどうかを確認することです。
###方法###この問題を解決するための一般的なアプローチには、次の手順が含まれます -
3 つの文字列 (3 つの文字列のすべての順列) を 6 つの異なる方法で連結します。
連結された文字列ごとに、回文を形成できるかどうかを確認します。
-
文字列が回文を形成できるかどうかを確認するには、文字列内に奇数の頻度で出現する文字が 1 つだけであることを確認する必要があります。
C ソリューション
これは、上記のメソッドを実装する C 関数です -
リーリー ###出力### リーリーテストケースの説明例
文字列を「abc」、「def」、「cba」にしてみましょう。
関数 canFormPalindrome(str) は、文字列全体がすでに回文であるかどうかをチェックするのではなく、文字列全体を回文に再配置できるかどうかをチェックします。
文字列「abc」、「de」、および「edcba」を使用して、それらを連結して得られる文字列「abcdeedcba」は、「d」文字が 2 つと「e」が 2 つ含まれるため、回文に並べ替えることができません。ただし、「b」文字は 1 つだけです。したがって、出力は確かに「No」になります。
関数 checkSubstrings は、3 つの文字列の可能なすべての連結をチェックします。ただし、これらはいずれも回文を形成するように再配置できないため、出力は「いいえ」になります。
###結論は###このような質問を解決できることは、コーディング面接で良い成績を収めるだけでなく、すべてのソフトウェア エンジニアにとって不可欠な問題解決スキルも向上します。この質問は、文字列操作とハッシュを使用して複雑な問題を解決する方法を示す良い例です。これらのトピックを習得するには、練習と理解が鍵となります。
以上が指定された 3 つの文字列の部分文字列を回文文字列に連結できるかどうかをチェックしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHPでint型をstring型に変換する方法を詳しく解説 PHPの開発では、int型をstring型に変換する必要に遭遇することがよくあります。この変換はさまざまな方法で実現できますが、この記事では、読者の理解を深めるために、具体的なコード例とともに、いくつかの一般的な方法を詳しく紹介します。 1. PHP の組み込み関数 strval() を使用する PHP には、さまざまな型の変数を文字列型に変換できる組み込み関数 strval() が用意されています。 int型をstring型に変換する必要がある場合、

1. まず pycharm を開いて、pycharm ホームページに入ります。 2. 次に、新しい Python スクリプトを作成し、右クリックして [新規] をクリックし、[Pythonfile] をクリックします。 3. 文字列、コード: s="-" を入力します。 4. 次に、文字列内のシンボルを 20 回繰り返す必要があります (コード: s1=s*20)。 5. 印刷出力コード、コード: print(s1) を入力します。 6. 最後にスクリプトを実行すると、下部に戻り値が表示されます。 - 20 回繰り返しました。

タイトル: Golang で文字列が特定の文字で終わるかどうかを判断する方法 Go 言語では、文字列が特定の文字で終わるかどうかを判断する必要があることがあります。これは文字列を処理するときに非常に一般的です。この記事では、Go 言語を使用してこの関数を実装する方法と、参考用のコード例を紹介します。まず、Golang で文字列が指定された文字で終わるかどうかを判断する方法を見てみましょう。 Golang の文字列内の文字はインデックス作成によって取得でき、文字列の長さは次のようになります。

Golang で文字列が特定の文字で始まるかどうかを確認するにはどうすればよいですか? Golang でプログラミングする場合、文字列が特定の文字で始まるかどうかを確認する必要がある状況によく遭遇します。この要件を満たすために、Golang の strings パッケージによって提供される関数を使用してこれを実現できます。次に、Golangを使って文字列が特定の文字で始まるかどうかを確認する方法を、具体的なコード例とともに詳しく紹介します。 Golang では、strings パッケージの HasPrefix を使用できます。

PHP で 16 進数の文字列を変換するときに中国語の文字化けを解決する方法. PHP プログラミングでは、16 進数で表された文字列を通常の中国語の文字に変換する必要がある状況に遭遇することがあります。しかし、この変換の過程で、場合によっては中国語の文字化けが発生することがあります。この記事では、PHPで16進数を文字列に変換する際に中国語が文字化けする問題を解決する方法と、具体的なコード例を紹介します。 16 進数の変換には hex2bin() 関数を使用します。PHP の組み込み hex2bin() 関数は 1 を変換できます

Go 言語は、文字列インターセプトを含む豊富な文字列処理機能を提供する強力で柔軟なプログラミング言語です。 Go 言語では、スライスを使用して文字列をインターセプトできます。次にGo言語で文字列をインターセプトする方法を具体的なコード例を交えて詳しく紹介します。 1. スライスを使用して文字列をインターセプトする Go 言語では、スライス式を使用して文字列の一部をインターセプトできます。スライス式の構文は次のとおりです。slice:=str[start:end]where, s

PHP 文字列操作: スペースを効果的に削除する実用的な方法 PHP 開発では、文字列からスペースを削除する必要がある状況によく遭遇します。スペースを削除すると文字列がきれいになり、その後のデータ処理と表示が容易になります。この記事では、スペースを削除するための効果的かつ実践的な方法をいくつか紹介し、具体的なコード例を添付します。方法1: PHP組み込み関数trim()を使用する PHP組み込み関数trim()を使用すると、文字列の両端のスペース(スペース、タブ、改行などを含む)を削除でき、非常に便利で簡単です。使用します。

PHP 文字列マッチングのヒント: あいまいな組み込み式を避ける PHP 開発では、文字列マッチングは一般的なタスクであり、通常は特定のテキスト コンテンツを検索したり、入力形式を検証したりするために使用されます。ただし、一致の精度を確保するために、曖昧な包含式の使用を避ける必要がある場合があります。この記事では、PHP で文字列マッチングを行うときにあいまいな包含式を回避するためのテクニックをいくつか紹介し、具体的なコード例を示します。完全一致には preg_match() 関数を使用します。 PHP では、preg_mat を使用できます。
