記事一覧
技術記事・日々の学びをまとめています。
Go言語による分散サービス
Go言語による分散サービス
最新記事
multipassでk3sを動かす
multipassを使ってk3sを動かし、個人開発に活用する方法を紹介します。
スライディングウィンドウの実装|尺取り法をGoで書く
スライディングウィンドウアルゴリズムの実装を解説。固定・動的ウィンドウサイズ、配列の部分和を検索するユースケース(レートリミッター等)、ウィンドウをスライドさせる処理の流れをGoコードで紹介します。
モノレポとは?メリット・デメリットと適切な使い方
モノレポのメリット・デメリット・適切な使い場面を解説。マルチリポジトリとの比較や、導入時に考慮すべきポイントをまとめます。
実用Go言語
実用Go言語
2分探索木の探索パターンを図解で理解する
2分探索木の探索パターンを解説。DFS(先行順・中間順・後行順)、BFS、一筆書き法による走査で木構造の走査順序をマスターする実践ガイドです。
認定スクラムマスター(LSM)になった
Scrum Inc. JapanのトレーニングとExamを経て認定スクラムマスター(LSM)になった際の所感とメモを紹介します。
尺取り法とは|計算量を落とすアルゴリズムを図解
尺取り法(Two Pointer Technique)とは何か。左右のインデックスを使った探索の仕組み、O(N²)からO(N log N)への計算量改善の仕組みをGoコードの例で解説します。
アルゴリズムとデータ構造 - ハッシュマップ
ハッシュマップの仕組みを解説。平均O(1)のアクセス、衝突解決のオープンアドレス法とチェイン法、Goでの基本的な実装を紹介します。
隣接リストと隣接行列の違い|グラフ表現の使い分け
隣接リスト(O(V+E)の空間・疎グラフに有利)と隣接行列(O(V²)の空間・O(1)の辺判定)を比較。有向・無向グラフのGo実装例とともにグラフの表現方法を解説します。
スタックとキューの実装
Go言語でスタック・キューをLIFO・FIFO実装、スライス・連結リストのパターン別に時間計算量O(1)で構築する方法
連結リストのランナーテクニック
連結リストの走査に役立つランナーテクニックについてまとめます。
再帰処理の苦手なところ
再帰処理でつまずきやすいreturn文やコールスタックの評価について、克服のための考え方とともに解説します。
アルゴリズムとデータ構造の基本の復習
「アルゴリズムとデータ構造の基本の復習」のまとめと読書メモ。重要なポイントと実践的な知見を整理します。
プログラマ脳
プログラマ脳
カウントソートの実装|O(n+k)の整列をGoで
カウントソートを実装で学ぶ。比較なしソート、要素カウント、累積和計算で線形時間効率化を実現するアルゴリズムの数学的考え方を解説します。
プログラミング脳をこれから鍛える本
プログラミング脳をこれから鍛える本
バックトラッキングの実装
バックトラッキングアルゴリズムを実装で学ぶ。制約満たし探索、重複なし組み合わせ、再帰処理、木構造による考え方でGoの実装例から理解を深める実践ガイドです。
Goで始めるコードのパフォーマンス改善
Goのパフォーマンス改善の実践。pprofによるプロファイリング、ベンチマーク、エスケープ解析、メモリアロケーション削減を、自作HTTPルーターの最適化事例とともに解説します。
MySQLのトランザクション分離レベル:ダーティリード・ファントムリードを防ぐ
MySQL のトランザクション分離レベルを解説。ダーティリード・ノンリピータブルリード・ファントムリードと、それぞれを防ぐ設定方法を学べます。