For a high-performance B+Tree, the memory layout of each node must be a single contiguous block. This improves locality of reference, increasing the likelihood that the node's contents reside in the CPU cache. In C++, achieving this means forgoing the use of std::vector, as it introduces a layer of indirection through a separate memory allocation. The solution to this problem though inevitably inc
先日、業務で重複判定を実装する機会がありました。その中でUnionFindと逆引きインデックスという技術を使ったのですが、実際に導入してみると非常に効果的だったので、今回は商品マスタの重複検出を例にこれらの技術を用いて重複検出の課題を解決した話をします。 想定する問題 ECサイトの商品マスタ管理において、同一商品が複数のレコードとして登録されてしまう問題があるとします。これは、異なる仕入先からの商品情報や、データ入力時の表記揺れなどが原因で起こります。重複した商品データは在庫管理の混乱や顧客体験の悪化を招くため、正確な重複検出と統合が必要になります。 重複判定条件 今回の商品マスタの例では、以下のいずれかの条件を満たせば「重複」とみなします。 JANコードが一致:jan_codeが同じ 型番が一致:model_numberが同じ ブランド名 + 容量が一致:brandとcapacityの組
Posted on September 30, 2025 Updated on October 8, 2025 For software engineers, diffs are a ubiquitous method for representing changes: We use diffs to compare different versions of the same file (e.g., during code review or when trying to understand the history of a file), to visualize the difference of a failing test compared with its expectation, or to apply changes to source files automaticall
Accidentally writing a fast SAT solver In my freshman year of college, I found myself staring at the screen looking over this for the first time: Instead of being assigned to recommended classes in high school, I had the pleasure (and burden) of figuring out the schedule for my next 4 months on my own. After going over required courses, recommended courses, optional courses, and what others are t
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く