English

An optimal deterministic algorithm for finding a strict saddlepoint

Data Structures and Algorithms 2026-07-24 v1

Abstract

Given an n×nn\times n matrix AA, a saddlepoint of AA is an entry that is the maximum in its row and the minimum in its column. It is a strict saddlepoint if no other entry in its row or column has the same value. Finding a non-strict saddlepoint requires Θ(n2)\Theta(n^2) matrix queries in the worst case. In contrast, a strict saddlepoint can be found with only O(n)O(n) queries. In 1991, Bienstock, Chung, Fredman, Sch\"affer, Shor, and Suri---and, independently, Byrne and Vaserstein---showed that one can find a strict saddlepoint (or certify that none exists) in O(nlogn)O(n\log n) time using O(n)O(n) matrix queries. In 2024, Dallant, Haagensen, Jacob, Kozma, and Wild gave an O(nlogn)O(n\log^* n)-time algorithm, followed shortly after by an optimal randomized algorithm running in O(n)O(n) time with high probability. Whether O(n)O(n) time could also be achieved deterministically was left open by these works. Here we resolve this question by presenting a simple deterministic algorithm that finds a strict saddlepoint, or reports that none exists, in optimal O(n)O(n) time. Our algorithm combines elementary ingredients from previous approaches with linear-time selection from a collection of sorted lists.

Cite

@article{arxiv.2607.22312,
  title  = {An optimal deterministic algorithm for finding a strict saddlepoint},
  author = {Justin Dallant},
  journal= {arXiv preprint arXiv:2607.22312},
  year   = {2026}
}