今注目のニュース
「違和感全くなし」「なにしてもハマる」 木梨憲武の“職業なりきり写真”シリーズが日常に溶け込みすぎと話題に
片寄涼太、自分の人生が「ただごとじゃないことに」と実感した瞬間
関わりのない人から嫌われる、という意味不明な状況 「挨拶しても無視されて憂鬱…」

ソート単語

ソート

掲示板をみる(15)
  • twitter
  • facebook
  • はてな
  • LINE

ソート英:sort)とは、種類、仕方、方法などを意味する英単である。

またコンピューターとしては、「情報の並べ替え」を行うこと。この記事ではこれについて解説する。

概要

プログラミングにおいて、ソートとはバラバラデータを規則正しく並べ替えること。コンピュータで扱う代表的な問題なので、効率化のためにいろいろなアルゴリズムが開発されてきた。

並のプログラマーライブラリにソート処理を投げていることが多いため、自前で実装しろといわれると中々思い出せず、分厚い参考書を引っり出すハメになる物。

種類

ニコニコ大百科に記事があるソートアルゴリズム名は太字。)

その他多数。ソートの調べ物をするときに「安定ソート」とか「均計算量」とかに気をつけると楽しい。

バブルソート

ソートのアルゴリズムで必ず最初に習うもの。較回数、交換回数やたら多く、元の並び順によって較回数が変わるということもいので効率が悪い。

#include <stddef.h> /* size_t */ void bubble_sort(int *base, size_t nmemb) { size_t i; for (i = 0, nmemb--; i < nmemb; i++) { size_t j; for (j = nmemb; j > i; j--) { /* 後ろの方から始める */ if (base[j - 1] > base[j]) { /* 隣り合った要素を較し、前が大きければ交換。 */ int tmp; tmp = base[j - 1]; base[j - 1] = base[j]; base[j] = tmp; } /* これを繰り返して小さい物をどんどん前へ持って行く。 */ } /* この時点で一番前の要素が確定する。 */ } return; }

Rubyの配列のsortメソッド

このサイトを支えているRubyでソートをするときはこんな感じになる。

array = array.sort

簡単ですね。これからプログラムを学ぶ人はRubyに入信しなさい。

関連動画

キャラクターの表示順序のためにバケットソートを利用している。アルゴリズムの解説付き。

関連項目

(様々なソートアルゴリズムの記事については、「種類」の節を参照)

掲示板

急上昇ワード

最終更新:2019/06/17(月) 09:00

ほめられた記事

最終更新:2019/06/17(月) 09:00

ウォッチリストに追加しました!

すでにウォッチリストに
入っています。

OK

追加に失敗しました。

OK

追加にはログインが必要です。

       

ほめた!

すでにほめています。

すでにほめています。

ほめるを取消しました。

OK

ほめるに失敗しました。

OK

ほめるの取消しに失敗しました。

OK

ほめるにはログインが必要です。

TOP