検索
ホームページウェブフロントエンドjsチュートリアル複数の回転後に指定されたインデックスで要素を検索する JavaScript プログラム

JavaScript 程序在多次旋转后查找给定索引处的元素

複数の回転後に指定されたインデックスにある要素を見つけるための JavaScript プログラムを実装します。このプログラムは、配列に対して回転を実行し、指定されたインデックスに存在する要素を返すように要求します。このタスクを実行するには、モジュロ演算子を使用して、各回転後に新しいインデックスを計算します。説明では常に未来進行形を使用します。

プログラムでは、配列の入力、回転数、インデックスを取得します。次に、モジュロ演算子を使用して回転を実行し、各回転後に新しいインデックスを見つけます。新しいインデックスは、元のインデックスに回転数を加算し、その合計を配列の長さで割ることによって求められます。最終インデックスの要素がプログラムの結果として返されます。

要約すると、複数の回転後に指定されたインデックスにある要素を見つけるための、シンプルかつ効率的なプログラムを開発します。このプログラムはモジュロ演算子の使用法を示しており、JavaScript で配列の回転を実行したい人にとって有益なツールです。

###方法###

要素の配列と複数の回転

k

が与えられた場合、タスクは回転後の指定されたインデックス n にある要素を見つけることです。

    まず、
  • k

    回転後の要素の実際の位置を決定します。実際の位置は、#nk を法として計算することで求めることができます。

    要素を右に
  • k
  • 回移動することにより、配列の回転を実行します。

    回転を実現するには、次のメソッドを使用できます -
  • 最後の要素を一時変数に保存します。
    • すべての要素を 1 ステップ右に移動します。
    • 最初の要素を一時変数に置き換えます。
    • ステップ 3 を
    k
  • 回繰り返して、すべてのスピンを完了します。

    すべての回転が完了したら、
  • n
  • 番目のインデックス (現在の実際の位置) にある要素を返します。

    このメソッドの時間計算量は
  • O(n * k),
  • です。ここで、

    n は配列内の要素の数です。ただし、循環回転の概念を使用することで O(n) に最適化できます。 ###例###

    これは、複数の回転後に指定されたインデックスで要素を検索する JavaScript プログラムです -
  • リーリー

この例では、結果は 4 で、2 回のスピン後のインデックス 3 にあります。

図解

関数 findElement は、arr、rotation、index の 3 つのパラメータを受け取ります。 arr は要素の配列、rotations は配列に対して実行される回転数、index は回転後に検出される要素のインデックスです。

  • 関数の最初の行は、配列の長さを法とした回転数を計算します。これは、回転数が配列の長さよりも大きい場合、いくつかの回転後に配列が元の状態に戻るためです。したがって、配列の長さに等しい回転を実行するだけで済みます。

  • 次の行では、回転の実行後に要素の新しいインデックスを計算します。これは、指定されたインデックスから回転数を減算し、結果に配列の長さを加算することによって行われます。最後のステップは、配列の長さを法とした結果を取得することです。

  • 最後に、関数は新しいインデックスの要素を返します。

  • 以下のコードでは、配列

    arr、

    回転数、インデックス
  • index
  • を初期化します。 コードの最後の行は、findElement

    関数を呼び出し、結果をコンソールに出力します。

以上が複数の回転後に指定されたインデックスで要素を検索する JavaScript プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はtutorialspointで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
JavaScript in Action:実際の例とプロジェクトJavaScript in Action:実際の例とプロジェクトApr 19, 2025 am 12:13 AM

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

JavaScriptとWeb:コア機能とユースケースJavaScriptとWeb:コア機能とユースケースApr 18, 2025 am 12:19 AM

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。

JavaScriptエンジンの理解:実装の詳細JavaScriptエンジンの理解:実装の詳細Apr 17, 2025 am 12:05 AM

JavaScriptエンジンが内部的にどのように機能するかを理解することは、開発者にとってより効率的なコードの作成とパフォーマンスのボトルネックと最適化戦略の理解に役立つためです。 1)エンジンのワークフローには、3つの段階が含まれます。解析、コンパイル、実行。 2)実行プロセス中、エンジンはインラインキャッシュや非表示クラスなどの動的最適化を実行します。 3)ベストプラクティスには、グローバル変数の避け、ループの最適化、constとletsの使用、閉鎖の過度の使用の回避が含まれます。

Python vs. JavaScript:学習曲線と使いやすさPython vs. JavaScript:学習曲線と使いやすさApr 16, 2025 am 12:12 AM

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

Python vs. JavaScript:コミュニティ、ライブラリ、リソースPython vs. JavaScript:コミュニティ、ライブラリ、リソースApr 15, 2025 am 12:16 AM

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

C/CからJavaScriptへ:すべてがどのように機能するかC/CからJavaScriptへ:すべてがどのように機能するかApr 14, 2025 am 12:05 AM

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

JavaScriptエンジン:実装の比較JavaScriptエンジン:実装の比較Apr 13, 2025 am 12:05 AM

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

ブラウザを超えて:現実世界のJavaScriptブラウザを超えて:現実世界のJavaScriptApr 12, 2025 am 12:06 AM

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。