JavaScript プログラム: 配列がソートされているかどうかを確認し、回転します
注 - ここでは並べ替えと回転について話しています。つまり、少なくとも 1 回の回転が必要であることを意味します。ソートされた配列をソートおよび回転された配列として扱うことはできません。
サイズ Nの配列が与えられたとします。 ###入力### リーリー ###出力### リーリー
イラスト配列はソートされ、1 ビットずつ回転されます
リーリー
1 位置でソートされ、回転された配列は入力配列と一致するため、出力は「yes」になります。###入力### リーリー ###出力### リーリー
イラスト指定された配列はソートされておらず、回転されていない配列です
リーリー
上記の並べ替えられた配列も回転された配列も入力配列と一致しないため、答えは「いいえ」です。###方法###
ここでは 2 つの方法について説明します。次のセクションでそれらを見てみましょう -方法 1: ピボット要素 (最小数) を見つけて配列がソートおよび回転されているかどうかを確認する
このメソッドの考え方は、最小数を見つけ、配列をソートして回転すると、最小数の前後の値がソートされた形になるはずであるということです。
###例### リーリー
時間計算量 - O(N)、N は配列のサイズです。スペースの複雑さ - 余分なスペースを使用していないため、O(1)。
方法 2: 隣接する反転を計算して配列がソートおよび回転されているかどうかを確認する
このメソッドの考え方は、配列を反復処理して、前の要素が現在の要素より小さいかどうかを確認するということです。ソートおよび回転された配列の場合、前の要素が現在の要素より大きい場合、カウントは 1 でなければなりません。それ以外の場合、配列はソートおよび回転されません。
###例### リーリー
時間計算量 - O(N)、N は配列のサイズです。スペースの複雑さ - 余分なスペースを使用していないため、O(1)。
###結論は###
このチュートリアルでは、配列がソートおよび回転されているかどうかを確認する方法について説明しました。ここでは 2 つの方法が示されています。1 つはピボット (最小の要素を意味します) を見つける方法で、もう 1 つは隣接する反転を計算することです。両方のメソッドの時間と空間の複雑さは同じです。つまり、それぞれ O(N) と O(1) です。以上がJavaScript プログラム: 配列がソートされているかどうかを確認し、回転しますの詳細内容です。詳細については、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)

ホットトピック









記事では、JavaScriptライブラリの作成、公開、および維持について説明し、計画、開発、テスト、ドキュメント、およびプロモーション戦略に焦点を当てています。

この記事では、ブラウザでJavaScriptのパフォーマンスを最適化するための戦略について説明し、実行時間の短縮、ページの負荷速度への影響を最小限に抑えることに焦点を当てています。

フロントエンドのサーマルペーパーチケット印刷のためのよくある質問とソリューションフロントエンド開発におけるチケット印刷は、一般的な要件です。しかし、多くの開発者が実装しています...

この記事では、ブラウザ開発者ツールを使用した効果的なJavaScriptデバッグについて説明し、ブレークポイントの設定、コンソールの使用、パフォーマンスの分析に焦点を当てています。

この記事では、ソースマップを使用して、元のコードにマッピングすることにより、Minified JavaScriptをデバッグする方法について説明します。ソースマップの有効化、ブレークポイントの設定、Chrome DevtoolsやWebpackなどのツールの使用について説明します。

エントリーレベルのタイプスクリプトチュートリアルをマスターしたら、TypeScriptをサポートするIDEで独自のコードを作成し、JavaScriptにコンパイルできるはずです。このチュートリアルは、TypeScriptのさまざまなデータ型に飛び込みます。 JavaScriptには、NULL、未定義、ブール値、数字、文字列、シンボル(ES6によって導入)とオブジェクトの7つのデータ型があります。 TypeScriptはこれに基づいてより多くのタイプを定義し、このチュートリアルではすべてを詳細に説明します。 ヌルデータ型 JavaScriptのように、Typescriptのnull

この記事では、Javaのコレクションフレームワークの効果的な使用について説明します。 データ構造、パフォーマンスのニーズ、スレッドの安全性に基づいて、適切なコレクション(リスト、セット、マップ、キュー)の選択を強調しています。 コレクションの使用を効率的に最適化します

このチュートリアルでは、chart.jsを使用してパイ、リング、およびバブルチャートを作成する方法について説明します。以前は、4つのチャートタイプのchart.js:ラインチャートとバーチャート(チュートリアル2)、およびレーダーチャートと極地域チャート(チュートリアル3)を学びました。 パイとリングチャートを作成します パイチャートとリングチャートは、さまざまな部分に分かれている全体の割合を示すのに理想的です。たとえば、パイチャートを使用して、サファリの男性ライオン、女性ライオン、若いライオンの割合、または異なる候補者が選挙で受け取る票の割合を示すことができます。 パイチャートは、単一のパラメーターまたはデータセットの比較にのみ適しています。パイチャートのファンの角度はデータポイントの数値サイズに依存するため、パイチャートは値のあるエンティティをゼロ値で描画できないことに注意してください。これは、割合がゼロのエンティティを意味します
