二分探索アルゴリズムを使用して数値の立方根を見つける Java プログラム
Cube root は整数値であり、それ自体を 3 回連続して乗算すると元の値になります。この記事では、二分探索を使用して数値の立方根を見つける Java プログラムを作成します。数値の立方根を求めることは、二分探索アルゴリズムの応用です。この記事では、二分探索を使用して立方根を計算する方法について詳しく説明します。
入出力例
リーリーたとえば、64 の立方根は 4 で、出力は 4 になります。
リーリーたとえば、216 の立方根は 6 で、出力は 6 になります。
二分探索
二分探索は、要素 (つまり、ソートされた配列内のキー) を見つけるために使用されるアルゴリズムです。バイナリアルゴリズムの動作原理は次のとおりです
配列が「arr」であると仮定します。配列を昇順または降順に並べ替えます。
low = 0、high = n-1 (n = 要素数) を初期化し、mid を middle = low (high-low)/2 として計算します。 arr[middle] == key の場合、配列の中央のインデックスである middle を返します。
キー値が arr[middle] 要素より小さい場合は、高インデックスを中間インデックス -1 に設定します。キー値が中間要素より大きい場合は、低インデックスを中間インデックスに設定します。 1
検索したい要素が見つかるまで二分探索を続けます。
low が high より大きい場合、キー値が配列 'arr' に存在しないため、直接 false を返します。
バイナリ検索を使用してキーを検索する例
###質問###順序付き整数配列 arr = [1, 3, 5, 7, 9, 11] の場合、二分検索を使用して要素のインデックス、つまり key = 7 を見つけます。
###解決###
low = 0、high = 5 (配列の最後のインデックス) を初期化します。
while ループの最初の反復により、中間インデックスが Mid = low (high-low)/2
となります。
中央値 = 0 (5-0)/2 = 2。
arr[mid] の値は 5 で、キー値 7 より小さくなります。したがって、low=mid1=3を更新します。
while ループの 2 回目の反復では、low (high-low)/2 を使用して、中間インデックス Mid = 4 を取得します。
arr[mid] の値は 9 で、キー値 7 より大きくなります。したがって、高 = 3 (中 - 1) を更新します。
while ループの 3 回目の反復により、中間インデックス Mid = 3 が得られます。
arr[mid] は 7 で、キーの値と同じです。したがって、中間のインデックスである 3 を返します。
つまり、指定された配列では、キーワードのインデックスは 7 であり、二分探索アルゴリズムを使用してインデックス 3 が見つかりました。
-
二分探索を使用して立方根を求めるアルゴリズム
- 数値「n」を考慮し、low=0 および right=n (指定された数値) を初期化します。
ステップ 2 - 中 = 低 (高-低)/2 を使用して、低値と高値の中央値を見つけます。
ステップ 3 -mid *mid*mid の値を見つけます。mid *mid*mid == n の場合、mid の値を返します。
ステップ 4 - 中央の値が n より小さい場合は、low=mid 1、それ以外の場合は high=mid-1
ステップ 5 - 値が見つかるまでステップ 2 ~ 4 を繰り返します。
Example の中国語訳は次のとおりです: Example
この例では、二分探索アルゴリズムを使用して値の立方根を見つけます。カスタム クラス「BinarySearchCbrt」を作成し、「cuberoot」関数で数値の立方根を見つけるための二分探索コードを実装しました。ここで、カスタム クラス オブジェクトを作成し、「number」という名前の整数変数を初期化し、そのクラス オブジェクトを使用して「cuberoot」関数を呼び出すことで、目的の出力が表示されます。
リーリー ###出力### リーリー時間計算量: O(NlogN) 補助空間: O(1)
それでは、この記事では、Java の二分探索アルゴリズムを使用して数値の立方根を見つける方法について説明しました。
以上が二分探索アルゴリズムを使用して数値の立方根を見つける Java プログラムの詳細内容です。詳細については、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)

ホットトピック









この記事では、Java コードを使用して、開いたコマンド ウィンドウに挿入されたコマンドを選択するためのさまざまな方法を使用します。コマンド ウィンドウは「cmd」を使用して開きます。ここでは、同じことを行う方法は Java コードを使用して指定します。コマンド ウィンドウは、最初に Java プログラムを使用して開きます。

さまざまな企業の適格性基準を知るには、以下の表を参照してください。CGPA の中国語訳は次のとおりです。 GPA 8 つ以上の適格企業 Google、Microsoft、Amazon、Dell、Intel、Wipro 7 つ以上のチュートリアル ポイント、アクセンチュア、 Infosys 、 Emicon、6rtCamp 以上の Rellins、Cybertech、Skybags、Killer、Raymond 以上 5Patronics、Shoes、NoBrokers Java プログラムに入って、tpp 学生の面接適格性を確認しましょう。方法 1: ifelseif 条件を使用する 通常、複数の条件をチェックする必要がある場合に使用します。

ファイルのサイズは、ハードドライブなどの特定のストレージデバイス上で特定のファイルが占めるストレージスペースの量です。ファイルのサイズはバイト単位で測定されます。このセクションでは、指定されたファイルのサイズをバイト、キロバイト、メガバイト単位で取得する Java プログラムを実装する方法について説明します。バイトはデジタル情報の最小単位です。 1 バイトは 8 ビットに相当します。 1 キロバイト (KB) = 1,024 バイト、1 メガバイト (MB) = 1,024KB、1 ギガバイト (GB) = 1,024MB、1 テラバイト (TB) = 1,024GB。ファイルのサイズは通常、ファイルの種類とそれに含まれるデータの量によって異なります。テキストドキュメントを例にとると、ファイルサイズはわずか数キロバイトですが、高解像度の画像やビデオファイルは

Java 言語は、今日世界で最も一般的に使用されているオブジェクト指向プログラミング言語の 1 つです。クラスの概念は、オブジェクト指向言語の最も重要な機能の 1 つです。クラスはオブジェクトの設計図のようなものです。例えば、家を建てたいと思った場合、まず家の設計図、つまりどのように家を建てていくのかを示す図面を作成します。この計画によれば、私たちはたくさんの家を建てることができます。同様に、クラスを使用すると、多くのオブジェクトを作成できます。クラスは、多くのオブジェクトを作成するための青写真であり、オブジェクトは車、バイク、ペンなどの現実世界の実体です。クラスはすべてのオブジェクトの特性を持ち、オブジェクトはこれらの特性の値を持ちます。この記事では、クラスの概念を使用して長方形の周囲と面を見つける Java プログラムを作成します。

継承は、あるクラスのプロパティと動作に別のクラスからアクセスできるようにする概念です。メソッドやメンバ変数を継承するクラスをスーパークラスまたは親クラスと呼び、メソッドやメンバ変数を継承するクラスをサブクラスまたはサブクラスと呼びます。 Javaでは、クラスを継承するために「extends」キーワードを使用します。この記事では、相続を利用して定期預金や定期預金の利息を計算する Java プログラムについて説明します。まず、ローカル マシンの IDE でこれら 4 つの Java ファイル Acnt.java を作成します。このファイルには、金利や金額などの口座詳細を保存するために使用される抽象クラス「Acnt」が含まれます。また、計算用のパラメータ「amnt」を持つ抽象メソッド「calcIntrst」も含まれます。

ローマ数字 - 記号を使用して数字を表す古代ローマの体系に基づいています。これらの数字はローマ数字と呼ばれます。記号は I、V、X、L、C、D、M で、それぞれ 1、5、10、50、100、500、1,000 を表します。整数 - 整数は、正、負、ゼロの値で構成される整数です。分数は整数ではありません。ここでは、整数値に基づいてシンボル値を設定します。ローマ数字が入力として与えられるたびに、それを単位に分割して、適切なローマ数字を計算します。 I-1II–2III–3IV–4V–5VI–6...X–10XI–11..XV-15 この記事では、Java でローマ数字を整数に変換する方法を学びます。いくつかの例を示します - 例 1InputR

C# を使用してバイナリ検索アルゴリズムを作成する方法。バイナリ検索アルゴリズムは効率的な検索アルゴリズムです。時間計算量 O(logN) で順序付けられた配列内の特定の要素の位置を見つけます。 C# では、次の手順で二分探索アルゴリズムを作成できます。ステップ 1: データを準備する まず、検索対象のデータとしてソートされた配列を準備する必要があります。配列内の特定の要素の位置を見つけたいとします。 int[]data={1,3,5,7,9,11,13

Java プログラミング言語のしっかりとした基礎を身につけたい人はこちら。次に、ループがどのように機能するかを理解する必要があります。さらに、ピラミッド パターンの問題を解くことは、for ループと while ループの広範な使用を含むため、Java の基本に関する知識を高める最良の方法です。この記事の目的は、Java で使用できるさまざまな種類のループを利用してピラミッド パターンを印刷する Java プログラムを提供することです。ピラミッド パターンを作成する Java プログラム Java プログラムを使用して、次のピラミッド パターンを印刷します。 - 逆星形ピラミッド 星形ピラミッド 数字ピラミッド 1 つずつ説明していきます。モード 1: 逆スター ピラミッド メソッドは、行数を指定する整数「n」を宣言して初期化します。次に、空間の初期数を 0 として定義し、星の初期数を「n+」として定義します。
