EeBlog(テクニカルブログ)

ソートアルゴリズム(2)

今回はシェーカーソートを紹介します。

シェーカーソートは前回紹介したバブルソートを改善したものです。 バブルソートで隣接する要素を比較していくときにすで順番に並んでいる部分を検出した場合にはその部分をソート済みにすることで性能を上げています。 またバブルソードでは一方向からのみ走査していましたがシェーカーソートでは走査を毎回反転することで反対側からもソート済み部分を検出することができます。

以下はJavaによる実装例です。

(さらに…)

ソートアルゴリズム(1)

ソートアルゴリズムを紹介していきます。

整数を整列するソートアルゴリズムには様々なものがあり、それぞれのアルゴリズムには利点と欠点があります。

今回はバブルソートを紹介します。

バブルソートは隣接する要素を比較し入れ替えることでソートを行うアルゴリズムです。計算量はO(n^2)であり効率はよくありませんがアルゴリズムはシンプルで実装は容易です。

以下はJavaによる整数のリストを昇順に並べ替えるバブルソートアルゴリズムの実装例です。

(さらに…)

第115回 ネイティブアプリケーションからJavaVMを実行する

JNIではネイティブメソッドを実装するためのAPIだけでなくJavaVMを作成するAPIも用意されています。 これによりJavaプログラムをネイティブアプリケーションから実行することができます。

ではこのAPIを用いてネイティブアプリケーションからJavaVMを作成してHelloWorldを表示してみましょう。

(さらに…)