平衡二分探索木 Treap と Splay の実装と応用

平衡二分探索木(Balanced BST)は、動的集合操作を効率よく扱うための重要なデータ構造である。特に Treap および Splay 木は、それぞれ異なる戦略で平衡性を保ちながら、挿入・削除・検索などの基本操作を平均 $O(\log n)$ 時間で実現する。 単回転 Treap Treap(Tree + Heap)は、各ノードにランダムな優先度(priority)を持たせ、二分探索木の性質とヒープの性質を同 ...

7月24日 03:15 投稿

LeetCode 第358回週間コンテスト 解説

2815. 配列内の最大ペア和 二重ループで全探索する。 class Solution { public: int maxSum(vector<int>& nums) { auto getMaxDigit = [](int val) { int maxD = 0; while (val) { if (val % 10 > maxD) maxD = val % 10; val /= 10; } return maxD; } ...

5月31日 03:48 投稿