14件のドキュメント
arai60 概要・練習方法
新井康平氏が厳選したLeetCode60問。BigTech面接対策として一般社団法人ソフトウェアエンジニアリング協会が採用
arai60 - Two Pointers(二ポインタ法)
2つのポインタで配列を走査し、O(n²)をO(n)に改善するテクニック
arai60 - Sliding Window(スライディングウィンドウ)
可変長・固定長の「窓」をスライドさせて部分配列を効率的に処理するテクニック
arai60 - LinkedList(連結リスト)
ノードがポインタで繋がるデータ構造。ポインタ操作とRunner Techniqueが核心
arai60 - Stack(スタック)
LIFO構造で括弧のマッチング・単調スタック・式評価に使う
arai60 - Heap / PriorityQueue(ヒープ・優先度付きキュー)
最小・最大を O(log n) で取り出すデータ構造。K番目の要素・K個に頻出
arai60 - HashMap(ハッシュマップ)
O(1)の検索・挿入を活かして重複・頻度・グループ化問題を解くテクニック
arai60 - BFS / DFS(グラフ探索)
グラフ・格子の探索アルゴリズム。BFSは最短経路、DFSは全探索に使う
arai60 - Tree / BT / BST(木構造・二分木・BST)
木のトラバーサル・再帰・BSTの性質を使った問題群。arai60最多の11問
arai60 - Dynamic Programming(動的計画法)
部分問題の最適解をメモ化して再計算を省く。1D/2D DP・メモ化再帰の3パターン
arai60 - Binary Search(二分探索)
ソート済みデータをO(log n)で探索。境界値の扱いと不変条件の維持が重要
arai60 - Recursion(再帰)
問題を自己参照的に分解する。バックトラッキングと組み合わせた全探索が核心
arai60 - Sort(ソートアルゴリズム)
クイックソート・マージソート・バケットソートの仕組みと使い分け
arai60 - Greedy + Backtracking(貪欲法・バックトラッキング)
貪欲法は局所最適を積み上げ、バックトラッキングは条件違反で戻る全探索