Skip to content

Latest commit

 

History

History
58 lines (47 loc) · 1.72 KB

README.md

File metadata and controls

58 lines (47 loc) · 1.72 KB

What's this / 概要

主要なソートアルゴリズムの実行時間と比較回数を調査できるよう、Javaで実装しました。(ヒープソートは面倒だったので諦めました)

We implemented major sort algorithm with Java which can examine execution time and number of comparing. (except for the heap sort)

Usage / 使い方

 $ javac *.java
 $ java Main

Result (example) / 実行結果

バブルソート(隣接交換法) / Bubble sort
 比較回数一覧:
  データ数 10 : 45  (8477 ns)
  データ数 100 : 4995  (281607 ns)
  データ数 1000 : 504495  (6032699 ns)
  データ数 10000 : 50499495  (146191395 ns)

基本挿入法 / Insertion sort
 比較回数一覧:
  データ数 10 : 17  (4052 ns)
  データ数 100 : 2786  (104340 ns)
  データ数 1000 : 251208  (3479585 ns)
  データ数 10000 : 25250482  (39498929 ns)

マージソート / Merge sort
 比較回数一覧:
  データ数 10 : 23  (10214 ns)
  データ数 100 : 569  (47320 ns)
  データ数 1000 : 9269  (622796 ns)
  データ数 10000 : 129748  (1974720 ns)

クイックソート / Quick sort
 比較回数一覧:
  データ数 10 : 12  (60895 ns)
  データ数 100 : 223  (37037 ns)
  データ数 1000 : 3095  (453172 ns)
  データ数 10000 : 39568  (1589333 ns)

基本選択法 / Selection sort
 比較回数一覧:
  データ数 10 : 45  (5138 ns)
  データ数 100 : 4995  (150464 ns)
  データ数 1000 : 504495  (5333749 ns)
  データ数 10000 : 50499495  (77303216 ns)

シェルソート(改良挿入法) / Shell sort
 比較回数一覧:
  データ数 10 : 13  (4002 ns)
  データ数 100 : 407  (25862 ns)
  データ数 1000 : 7975  (442402 ns)
  データ数 10000 : 164188  (3298196 ns)