slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
ソートアルゴリズムの種類 PowerPoint Presentation
Download Presentation
ソートアルゴリズムの種類

Loading in 2 Seconds...

play fullscreen
1 / 11

ソートアルゴリズムの種類 - PowerPoint PPT Presentation


  • 241 Views
  • Uploaded on

ソートアルゴリズムの種類. 選択ソート  (selection sort) バブルソート  (bubble sort) 挿入ソート  (insertion sort) クイックソート  (quick sort) マージソート  (merge sort). 前回の授業で説明. 今回の授業で説明 . 小さい数のグループ. 大きい数のグループ. 31. 39. 28. 11. 45. 73. 63. 94. 各々を再帰的にソート. 11. 28. 31. 39. 45. 63. 73. 94. クイックソート  ―  基本的なアイディア.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'ソートアルゴリズムの種類' - tyrell


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1
ソートアルゴリズムの種類
  • 選択ソート (selection sort)
  • バブルソート (bubble sort)
  • 挿入ソート (insertion sort)
  • クイックソート (quick sort)
  • マージソート (merge sort)

前回の授業で説明

今回の授業で説明 

slide2

小さい数のグループ

大きい数のグループ

31

39

28

11

45

73

63

94

各々を再帰的にソート

11

28

31

39

45

63

73

94

クイックソート ― 基本的なアイディア

数字 を大きい数と 小さい数の      2グループに分割

左のグループの要素≦右のグループの要素

slide3

8つの数字の中からひとつ選ぶ                     (ピボット)8つの数字の中からひとつ選ぶ                     (ピボット)

左のグループの要素≦ピボット≦右のグループの要素

となるように分割

11

28

31

39

45

63

73

94

クイックソート ― 分割方法(その1)

一番左の値をピボットとする

slide4

31

39

28

73

45

11

63

94

クイックソート ― 分割方法(その2)

左のグループの要素≦ピボット≦右のグループの要素 と分割したい

63

(1)左側からピボット以上の値を探す

(2)右側からピボット以下の値を探す

(3)2つの数字を交換

slide5

31

39

28

11

45

73

63

94

(4)●が●の左にきたら終了。 分割。

31

39

28

11

45

73

63

94

(1)左側からピボット以上の値を探す

クイックソート ― 分割方法(その3)

(2)右側からピボット以下の            値を探す 

(3)数字を交換

(1)ピボット以上の値を探す

(2)ピボット以下の値を探す

slide6

31

39

28

11

45

73

63

94

11

28

39

31

45

63

73

94

11

28

31

39

45

73

94

39

45

39

45

11

28

31

39

45

73

94

11

28

31

39

45

63

73

94

クイックソート ― 全体の流れ
slide7

63

39

28

73

45

11

31

94

28

39

63

73

11

31

45

94

11

28

31

39

45

63

73

94

マージソート ― 基本的なアイディア

配列を2分割

各々を再帰的にソート

2つの配列をマージ

ソート完了

slide8

各配列の先頭の数字を比較=>小さいほうが最小値   =>作業用の配列の先頭へ各配列の先頭の数字を比較=>小さいほうが最小値   =>作業用の配列の先頭へ

28

39

63

73

11

31

45

94

作業用の配列Bを用意

11

マージソート ― マージのやり方(その1)マージソート ― マージのやり方(その1)
  • ソートされている2つの配列をマージ
slide9

28

28

39

39

63

63

73

73

31

31

45

45

94

94

11

28

31

11

マージソート ― マージのやり方(その2)マージソート ― マージのやり方(その2)

各配列の先頭の数字を比較    =>小さい方を作業用の配列へ

slide10

39

45

63

73

94

39

63

73

45

94

11

28

31

マージソート ― マージのやり方(その3)マージソート ― マージのやり方(その3)

次々に作業用の配列に挿入

マージ完了!

slide11

分割

63

39

28

73

45

11

31

94

分割

分割

63

39

28

73

45

11

31

94

63

39

28

73

45

11

31

94

マージ

マージ

39

63

28

73

11

45

31

94

マージ

28

39

63

73

11

31

45

94

11

28

31

39

45

63

73

94

マージソート ― 全体の流れ