ルーマニア人はダンスが大好きな国民です。古いルーマニア映画「チプリアン・ボロンベスク」をご覧になったことがあるなら、その明るくメロディアスなダンスミュージックの情熱に心を奪われるでしょう。 ルーマニア人はダンスが大好きです。それは映画やフェスティバルだけに反映されているわけではありません。ダンスはどこにでも見られます。大学のコンピューター コースでのソート アルゴリズムの指導もダンスの形で行われます。 ルーマニアのトゥルグ・ムレシュにあるサピエンティア大学は、さまざまなソートアルゴリズムがどのように機能するかを説明する一連のフォークダンスを制作しました。ここにそれらのビデオがあります。 ダンスはとても良いですが、教育効果を判断するのは私にとって難しいです。少なくとも、これらのソートアルゴリズムの効率性に深刻な疑問を感じます。 ソートアルゴリズム: 選択ソート選択ソートはシンプルで直感的なソートアルゴリズムです。仕組みは以下のとおりです。まず、ソートされていないシーケンス内の最小 (最大) の要素を見つけて、ソートされたシーケンスの開始位置に格納します。次に、残りのソートされていない要素から最小 (最大) の要素を探し続け、ソートされたシーケンスの最後に配置します。すべての要素がソートされるまでこれを繰り返します。 選択ソートの主な利点は、データの移動に関連しています。要素が正しい最終位置にある場合、その要素は移動されません。選択ソートでは、要素のペアを交換するたびに、少なくともそのうちの 1 つが最終位置に移動されるため、n 個の要素のリストをソートするには、合計で最大 n-1 回の交換が必要になります。要素の移動に完全にスワップに依存するすべてのソート方法の中で、選択ソートは非常に優れた方法です。 ソートアルゴリズム: シェルソートヒル ソートは、降順増分ソート アルゴリズムとも呼ばれ、挿入ソートのより効率的な改良版です。シェルソートは不安定なソートアルゴリズムです。 ヒルソートは、挿入ソートの次の 2 つの特性に基づいた改良された方法を提案します。 1. 挿入ソートは、ほぼソートされたデータに対して操作する場合に効率的です。つまり、線形ソートの効率を実現できます。 ソートアルゴリズム: バブルソートバブルソート(Bubble Sort、台湾語ではバブルソートまたはバブルソートと訳される)は、単純なソートアルゴリズムです。ソートする配列を繰り返し処理し、一度に 2 つの要素を比較して、順序が間違っている場合はそれらを交換します。シーケンスを訪問する作業は、交換が不要になるまで、つまりシーケンスがソートされるまで繰り返されます。このアルゴリズムの名前は、小さな要素が交換を通じてゆっくりとシーケンスの先頭に「浮かんで」いくという事実に由来しています。 バブルソートでは、n 個の項目に対して O(n^2) 回の比較が必要であり、その場でソートできます。このアルゴリズムは理解して実装するのが最も簡単なソートアルゴリズムの 1 つですが、少数以上の要素のシーケンスをソートするには非常に非効率的です。 ソートアルゴリズム: クイックソートクイックソートは、Tony Hall によって開発されたソートアルゴリズムです。平均すると、n 個の項目をソートするには O(n log n) 回の比較が必要です。最悪の場合、O(n2) 回の比較が必要になりますが、これは一般的ではありません。実際、クイック ソートは、その内部ループがほとんどのアーキテクチャで効率的に実装できるため、他の O(n log n) アルゴリズムよりも大幅に高速になることがよくあります。 ソートアルゴリズム: マージソートマージソート(Merge sort、台湾ではmerge sortと訳される)は、マージ操作に基づく効果的なソートアルゴリズムです。このアルゴリズムは、分割統治法の非常に典型的な応用です。 ソートアルゴリズム: 挿入ソート挿入ソートのアルゴリズムの説明は、シンプルで直感的なソート アルゴリズムです。これは、順序付けられたシーケンスを構築することによって機能します。ソートされていないデータの場合は、ソートされたシーケンス内で後ろから前へスキャンし、対応する位置を見つけて挿入します。挿入ソートは通常、インプレースソート(つまり、O(1)の追加スペースのみを必要とするソート)によって実装されます。したがって、後ろから前へスキャンするプロセスでは、挿入する最初の要素のためのスペースを確保するために、ソートされた要素を繰り返し後方にシフトする必要があります。 この記事は http://www.vaikan.com/sort-dance/ から引用しました。 |
<<: 素晴らしいクラスタリングアルゴリズムがサイエンス誌に掲載されました
近年、人工知能の人気が急上昇しており、画像認識、音声認識、機械翻訳、自動運転車など、AI の能力と威...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
[[421224]]ハイパーオートメーションがネットワークとデータ セキュリティに与えるプラスの影響...
「象は踊れるの?」もちろん踊れますよ!かつての人々の考え方では、伝統的な大企業は、組織の肥大化や閉鎖...
8月22日、MIUIは、より良い最適化効果を実現し、Miファンに優れたシステム体験をもたらすために...
観光業界では徐々に人工知能を導入し、観光客にパーソナライズされた体験を提供しています。人工知能の助け...
無人運転技術にはまだ改善の余地があるものの、ますます成熟しつつあることは認めざるを得ません。車線逸脱...
教育革命が起こっており、人工知能は2032年までに882億ドルに達すると予想されています。人工知能(...
7月6日、Googleはプライバシーポリシーを更新し、BardやCloud AIなどのさまざまな人...
人工ニューラル ネットワークは、人工知能 (人間の認知能力を模倣するプログラム) を作成する方法です...
[[244078]]コンピュータサイエンスには多くの用語があり、それらの多くは一貫して使用されてい...
前回の記事では、2025年以降の人工知能の未来についてお話ししました(パート1)。今日は、5G、6G...
AIを生物多様性保全に活用することで、植物や動物の絶滅を防ぎ、安定した生態系を維持することができます...