PythonにはNumPyやSciPyによる優秀な高速フーリエ変換(FFT)アルゴリズムがありますが、基本的なFFTの仕組みを学習するにもPythonは最適です。ここでは最も一般的なFFTアルゴリズムであるCooley-Tukey法をPythonのNumPyで記述し、numpy.fftの結果と比較します。さらに、データ点が2の冪乗でない場合のゼロパディング処理も実装します。
続きを読むアルゴリズム
Pythonでクイックソートを実装する方法【動画作成方法付き】
Pythonで学ぶアルゴリズム、ソート第5段は「クイックソート」です。クイックソートは再帰的プログラミングを使って配列の種類によっては比較的高速にソートできるアルゴリズムです。ここではPythonで動画を作る方法を紹介しながら理解する事を目標とします。
続きを読むPythonでマージソートの挙動を可視化してスッキリするページ
ランダムなデータをソートするアルゴリズムは動画にして観察するとなぜだか癒されます。マージソートをプログラミングするためには再帰処理も覚える必要があり勉強にもなります。という事で、ここではソートの中でも一際人気なマージソートをPythonで可視化しながら学びます。
続きを読む【動画付き】Pythonで挿入ソートのアルゴリズムを実装する方法
Pythonで学ぶアルゴリズム、ソート第3段は「挿入ソート」です。挿入ソートは遅いソートに分類されますが、データの初期配置によって処理途中でbreakが効く分バブルソートよりも速くなる可能性があります。ここでは挿入ソートの図解と1からの実装によりそのアルゴリズムを学びます。
続きを読むPythonで2進数/8進数/16進数の基数変換を行うコード
Pythonで手を動かしながら基本情報技術者試験対策を行います。ここではコンピュータ内部の数値表現である2進数を始め、情報技術分野で重要となる8進数と16進数の概要を説明し、各基数変換を自由に計算できるようになる事を目標とします。
続きを読むPythonでアルゴリズム学習!二分探索と線形探索を比較してみた
Pythonコーディングのスキルアップのために、アルゴリズムの学習をしようと思います。ここでは探索アルゴリズムの基礎である二分探索をPythonコードで実装し、線形探索と比較してみました。
続きを読むPythonで選択ソートのアルゴリズムを実装する方法【動画付】
Pythonを使ったアルゴリズム学習シリーズです。今回は「選択ソート」の概要を図付きで説明し、Pythonでプログラミングする方法を紹介します。また、動作結果をアニメーションで示すことで理解を深めます。
続きを読むPythonコードと図解で理解するバブルソートのアルゴリズム
Pythonには便利なライブラリが多数ありますが、それらを使わずにアルゴリズムを学習することでスタンダードなスキルを身に付けることが出来ます。ここでは、最もシンプルなバブルソートをPythonコードと図解で理解することを目標とします。
続きを読む