個人財務 アルゴリズムの複雑さ - ダミー

アルゴリズムの複雑さ - ダミー

ビデオ: The Third Industrial Revolution: A Radical New Sharing Economy 2024

ビデオ: The Third Industrial Revolution: A Radical New Sharing Economy 2024
Anonim

ダミーのチートシートのアルゴリズムの一部

アルゴリズムは複雑であることは既に知っています。しかし、複雑なものほど、実行に時間がかかりますので、アルゴリズムの複雑さを知る必要があります。次の表は、実行時間順に(最速から最速に)複雑さのさまざまなレベルを理解するのに役立ちます。

複雑さ 説明
定数複雑度O(1) 入力の量にかかわらず、実行時間は変わらない。各入力には1単位の実行時間が必要です。対数の複雑さO(log n)
操作の数は入力よりも遅くなり、小さな入力ではアルゴリズムの効率が悪くなり、大きいものでは効率が高くなります。このクラスの典型的なアルゴリズムはバイナリ検索です。 線形複雑さO(n)
入力は1:1の比率で増加します。典型的なアルゴリズムは反復です。入力を1回スキャンしてその各要素に操作を適用すると繰り返します。線形複雑さO(n log n)999は、対数と線形の複雑さとの混合である。 Mergesortsort、Heapsort、Quicksortなど、データの順序付けに使用されるいくつかのスマートなアルゴリズムの典型です。二次的複雑性O(n 999 2 999)999は、入力数の2乗として増加する。別の反復(コンピュータサイエンスのネストされた反復と呼ばれる)の中にある反復を持つとき、あなたは二次的な複雑さを持ちます。たとえば、名前のリストがあり、最も類似したものを見つけるために、それぞれの名前を他のすべての名前と比較します。効率の悪い発注アルゴリズムの中には、バブルソート、選択ソート、挿入ソートという複雑さがあります。このレベルの複雑さは、アルゴリズムがソリューションに達する前に数時間または数日間実行される可能性があることを意味します。立方体の複雑さO(n 399)
複数のネストされた反復を持つため、操作は二次的複雑さよりもさらに速くなります。アルゴリズムがこのような複雑さを持ち、適度な量のデータ(100,000要素)を処理する必要がある場合、アルゴリズムは何年も実行される可能性があります。入力の威力である操作の数が多い場合は、アルゴリズムを多項式時間で実行することが一般的です。指数関数的複雑度O(2 999 n 999)このアルゴリズムは、新たに追加されたすべての要素に対して2倍の前の演算を行う。アルゴリズムにこのような複雑さがある場合、小さな問題でさえも永遠にかかることがあります。網羅的な検索を行う多くのアルゴリズムは指数関数的に複雑です。しかし、この複雑さの古典的な例は、フィボナッチ数の計算です。このアルゴリズムは、要素間の可能な組み合わせの数が多いため、複雑さの実質的な悪夢を提示する。ちょっと想像してみましょう:あなたの入力が100個のオブジェクトで、コンピュータの操作が10 999 - 6 999秒(今日のすべてのコンピュータで妥当な速度)であれば、約10 140 999年(宇宙の年齢は10 999 14 999年と推定されるため、不可能な時間です)。有名な要因の複雑さの問題は、セールスマンが多くの都市を訪れて出発都市に戻るための最短ルートを見つけなければならない、旅行セールスマンの問題です。
アルゴリズムの複雑さ - ダミー

エディタの選択

自転車の点検チェックリスト - ダミー

自転車の点検チェックリスト - ダミー

すぐに自転車の点検をするために数分。あなたの自転車を一時的に与えることは、あなたの次の乗り心地の安全性、快適性、そして楽しさを高めることができます。乗車準備の一環として、次の手順に従ってください:車輪のクイックリリースレバーを開閉して、確認します。

必須サイクリング用具 - ダミー

必須サイクリング用具 - ダミー

あなたはバイクの乗り心地をさらに楽しくするために何百万ものものを買うことができます。自転車用に必要なアクセサリーをいくつかご紹介します。ヘルメット:ヘルメットを着用することはオーストラリアとニュージーランドの法律です。

自転車の範囲を閲覧可能 - ダミー

自転車の範囲を閲覧可能 - ダミー

あなたはサイクリングをすることに決めましたが、その重要なキットを欠いている - バイク!あなたが望む自転車のタイプを正確に知っていない限り、良いアドバイスは、あなたの時間を費やして、自転車で何をするのか、どこに乗るのかを本当に考えてみることです。

エディタの選択

アプリとプライバシー - ダミーを特定する

アプリとプライバシー - ダミーを特定する

Spotifyアプリケーションに登録すると、あなたの個人的な詳細の一部にアクセスする。たとえば、Top10アプリを使用してプレイリストを公開するには、既存のFacebookアカウントにリンクする必要があります。このプロセス中、Facebookはあなたに特定の種類の共有を許可するかどうか尋ねます。

モバイル対応携帯電話を識別する - ダミー

モバイル対応携帯電話を識別する - ダミー

SpotifyモバイルはiPhoneで最も人気がありますが、優れたAndroidバージョン(basks Androidマーケットの5つ星評価のうち5つの評価では5位に入っています)が急速に追いついています。

特集 - ダミー

特集 - ダミー

スポットメイキングは、モバイルでも、あらゆる音楽への普遍的な即時アクセスを可能にしますデバイスまたはデスクトップコンピュータ。 Facebookは人々が古い友達と再会して新しい友達を作るのを助け、Spotifyの助けを借りて青春の歌を再発見し、友人や検索を通じて新鮮な音楽を発見しました。

エディタの選択

IOSアプリケーションでオブジェクト指向設計を使用する方法 - ダミー

IOSアプリケーションでオブジェクト指向設計を使用する方法 - ダミー

IOSは、動作がオブジェクトに関連付けられているプログラムを設計するさまざまな方法です。説明するために、紅茶とスープの作り方を検討することを検討してください。しかし、即座に代わりに活動に飛び込んではいけません。探偵が犯罪現場に入るように行動してください。

IOSアプリケーションでハイレベル抽象化を使用してビデオを再生する方法 - ダミー

IOSアプリケーションでハイレベル抽象化を使用してビデオを再生する方法 - ダミー

このセクションでは、MPMoviePlayerViewControllerクラスの高レベル抽象化を使用してiOSアプリケーションでビデオを再生する方法を説明します。 - (IBAction)playVideo:(id)sender {MPMoviePlayerViewController * moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL];このコードは、ビデオビューコントローラ内のTTTVideoViewControllerファイルからです。 [self presentMoviePlayerViewControllerAnimated:moviePlayer];}シンプルさ自体!必要なのはURLです。

IOSアプリケーションでJavaスクリプトオブジェクト表記を使用する方法 - ダミー

IOSアプリケーションでJavaスクリプトオブジェクト表記を使用する方法 - ダミー

JavaScript Object Notation (JSON)はiOSアプリのデータを表現する上で事実上の標準になっています。 JSONを使用して、Web上でデータを転送したり、長期保存データを保存および取得するためのフォーマットとして使用することができます。 JSONは、人間が読める形式であり、マシンが理解しやすい形式です。 JSONのデータは1つにまとめることができます...