アルゴリズムとデータ構造
30 件の記事
アルゴリズムとデータ構造 - キュー
アルゴリズムとデータ構造を学ぶシリーズの記事。FIFOのキューというデータ構造を取り上げ、enqueue・dequeueの操作やスタックとの計算量の比較を、Goでの実装例とともに解説する。
アルゴリズムとデータ構造 - スタック
アルゴリズムとデータ構造を学ぶシリーズの記事。LIFOのスタックというデータ構造を取り上げ、push・pop・peekの操作と計算量を、Goのスライスを使った実装例とともに解説する。
アルゴリズムとデータ構造 - 配列
アルゴリズムとデータ構造を学ぶシリーズの記事。データ構造としての配列を取り上げ、O(1)のランダムアクセスやO(n)の挿入・削除、静的・動的なメモリ確保の違いを、Goでの実装例とともに解説する。
アルゴリズムとデータ構造 - リスト
単方向連結リストの仕組みを解説。O(n)のアクセスとO(1)の挿入・削除、ポインタによるノードの走査、Goでの線形連結リスト実装を紹介します。
Golangでトライ木(Trie)を実装する|前方一致検索
トライ木(プレフィックス木)というデータ構造のアルゴリズムと、そのGoでの実装についてまとめた記事です。O(m)で検索・挿入ができる特徴や、HTTPルーティングなどへの応用、Radix Treeとの使い分けについて、挿入・検索の実装例を交えて解説します。
URLルーティングをつくる エピソード3(完結編)
ツリー構造を使ってURLルーティングを自作するシリーズのエピソード3。PHPで、パスパラメータやHTTPメソッド、ツリーベースの探索アルゴリズムに対応したURLルーティングを完成させるまでを解説する。
URLルーティングをつくる エピソード2
ツリー構造を使ってURLルーティングを自作するシリーズのエピソード2。エピソード1のツリー構造を洗練させ、エンドポイントのマッピングやスケーラブルなルーティングロジックの実装を解説する。
URLルーティングをつくる エピソード1
ツリー構造を使ってURLルーティングを自作するシリーズのエピソード1。HTTPリクエストのマッチングやパスパラメータの扱いを軸に、効率的にリクエストを処理するルーティングの仕組みを実装しながら解説する。
JavaScriptで始めるアルゴリズム
JavaScriptを使って基本的なアルゴリズムを学ぶ記事です。リストや配列を先頭から順に比較していく線形探索(リニアサーチ)や二分探索といった探索アルゴリズムと、選択ソートやバブルソートといった整列アルゴリズムを、実際に実装しながら仕組みを理解していきます。
O記法(オーダー記法)とは|アルゴリズムの計算量の求め方
O(オーダー)記法を使って、アルゴリズムの計算量を見積もる基礎を整理した記事。データ量の増加に対して実行時間がどれだけ増えるかを表す時間計算量や空間計算量の考え方を、具体例とともにわかりやすく解説する。