Amr Elmasry

dblp:85/6155 · DBLP profile ↗
← Back
54ranked-venue papers
37as first author
2since 2021 · last 2022
0000-0002-6549-908XORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 46 · 34 first-author · 2 since 2021Databases, data management, data science and information retrieval · 8 · 5 first-authorApplied, interdisciplinary, general and emerging computing · 3 · 1 first-authorComputer networks · 1 · 1 first-author
YearPublicationVenuePosition
2022 Regular numeral systems for data structures
Amr Elmasry, Jyrki Katajainen
Acta Informatica1
2021 Memory-Adjustable Navigation Piles with Applications to Sorting and Convex Hulls
abstract
We consider space-bounded computations on a random-access machine, where the input is given on a read-only random-access medium, the output is to be produced to a write-only sequential-access medium, and the available workspace allows random reads and writes but is of limited capacity. The length of the input is N elements, the length of the output is limited by the computation, and the capacity of the workspace is O ( S ) bits for some predetermined parameter S ≥ lg N . We present a state-of-the-art priority queue—called an adjustable navigation pile —for this restricted model. This priority queue supports M inimum in O (1) time, C onstruct in O ( N ) time, and E xtract - min in O ( N / S + lg S ) time for any S ≥ lg N . The priority queue can be further augmented in O ( N ) time to deal with a batch of at most S elements in a specified range of values at a time, and allow to I nsert (activate) or E xtract (deactivate) an element among these elements, such that I nsert and E xtract take O ( N / S + lg S ) time for any S ≥ lg N . We show how to use our data structure to sort N elements and to compute the convex hull of N points in the Euclidean plane in O ( N 2 / S + N lg S ) time for any S ≥ lg N . Following a known lower bound for the space-time product of any branching program for finding unique elements, both our sorting and convex-hull algorithms are optimal. The adjustable navigation pile has turned out to be useful when designing other space-efficient algorithms, and we expect that it will find its way to yet other applications.
Amr Elmasry, Jyrki Katajainen
ACM Trans. Algorithms2
2019 Red-black trees with constant update time
Amr Elmasry, Mostafa Kahla, Fady Ahdy, Mahmoud Hashem
Acta Informatica1
2019 Optimal prefix codes with fewer distinct codeword lengths are faster to construct
Ahmed A. Belal, Amr Elmasry
Inf. Comput.2
2019 A new algorithm for the shortest-path problem
abstract
Abstract In this article we propose a new single‐source shortest‐path algorithm that achieves the same O(n · m) time bound as the Bellman‐Ford‐Moore algorithm but outperforms it and other state‐of‐the‐art algorithms in many cases in practice. Our claims are supported by experimental evidence.
Amr Elmasry, Ahmed Shokry
Networks1
2017 Heap Construction - 50 Years Later
abstract
We study the problem of constructing a binary heap in an array using only a small amount of additional space. Let N denote the size of the input, M the capacity of the cache, and B the width of the cache lines of the underlying computer, all measured as numbers of elements. We show that there exists an in-place heap-construction algorithm that runs in Θ(N) worst-case time and performs at most 1.625N+o(N) element comparisons, 1.5N+o(N) element moves, N/B+O(N/M·lgN) cache misses, and 1.375N+o(N) branch mispredictions. The same bound for the number of element comparisons was derived and conjectured to be optimal by Gonnet and Munro; however, their algorithm requires Θ(N) pointers. For a tuning parameter S, the idea is to divide the input into a top tree of size Θ(N/S) such that each of its leaves root a bottom tree of size Θ(S)⁠. When S=Θ(lgN/lglgN)⁠, we can convert the bottom trees into heaps one by one by packing the extra space needed in a few words, and subsequently use Floyd's sift-down procedure to adjust the heap order at the upper levels. In addition to our theoretical findings, we also compare different heap-construction alternatives in practice.
Stefan Edelkamp, Amr Elmasry, Jyrki Katajainen
Comput. J.2
2017 Optimizing Binary Heaps
Stefan Edelkamp, Amr Elmasry, Jyrki Katajainen
Theory Comput. Syst.2
2017 Toward Optimal Self-Adjusting Heaps
abstract
We give a variant of the pairing heaps that achieves the following amortized costs: O (1) per find-min and insert , O (log log n ) per decrease-key and meld , O (log n ) per delete-min ; where n is the number of elements in the resulting heap on which the operation is performed. These bounds are the best known for any self-adjusting heap and match two lower bounds, one established by Fredman and the other by Iacono and Özkan, for a family of self-adjusting heaps that generalizes the pairing heaps but do not include our variant. We further show how to reduce the amortized cost for meld to be paid by the other operations, on the expense of increasing that of delete-min to O (log n + log log N ), where N is the total number of elements in the collection of heaps of the data structure (not just the heap under consideration by the operation).
Amr Elmasry
ACM Trans. Algorithms1
2016 A scalable maximum-clique algorithm using Apache Spark
abstract
In this paper, we propose a scalable algorithm for finding the exact solution to the maximum-clique problem. At the heart of our approach lies a multi-phase partitioning strategy, which enables iterative, in-memory processing of graphs. The multi-phase partitioning is tuned for the resources of the machine/cluster to get the best performance. To promote parallelization and scalability on both a cluster-level (distributing the problem on a number of machines) and on a machine-level (using all available cores on each machine), we use Apache Spark. We explore the untraditional usage of distributed frameworks, such as Apache Spark, to distribute computational load, as opposed to distributing big data. We focus on dense graphs, typically with thousands of vertices and a few millions edges; this is in contrast to sparse real-world graphs that don't initially fit into the memory of a single driver machine. Our experiments show that, for large dense graphs, we get up to 100% performance speedup compared to the state-of-the-art parallel approaches. Moreover, our algorithm is highly scalable and fault-tolerant.
Amr Elmasry, Ayman Khalafallah, Moustafa Meshry
AICCSA1
2016 Space-Efficient Plane-Sweep Algorithms
abstract
We introduce space-efficient plane-sweep algorithms for basic planar geometric problems. It is assumed that the input is in a read-only array of n items and that the available workspace is Theta(s) bits, where lg n <= s <= n * lg n. Three techniques that can be used as general tools in different space-efficient algorithms are introduced and employed within our algorithms. In particular, we give an almost-optimal algorithm for finding the closest pair among a set of n points that runs in O(n^2 /s + n * lg s) time. We also give a simple algorithm to enumerate the intersections of n line segments that runs in O((n^2 /s^{2/3}) * lg s + k) time, where k is the number of intersections. The counting version can be solved in O((n^2/s^{2/3}) * lg s) time. When the segments are axis-parallel, we give an O((n^2/s) * lg^{4/3} s + n^{4/3} * lg^{1/3} n)-time algorithm that counts the intersections and an O((n^2/s) * lg s * lg lg s + n * lg s + k)-time algorithm that enumerates the intersections, where k is the number of intersections. We finally present an algorithm that runs in O((n^2 /s + n * lg s) * sqrt{(n/s) * lg n}) time to calculate Klee's measure of axis-parallel rectangles.
Amr Elmasry, Frank Kammer
ISAAC1
2016 Dynamic range majority data structures
Amr Elmasry, Meng He 0001, J. Ian Munro, Patrick K. Nicholson
Theor. Comput. Sci.1
2015 Space-efficient Basic Graph Algorithms
abstract
We reconsider basic algorithmic graph problems in a setting where an n-vertex input graph is read-only and the computation must take place in a working memory of O(n) bits or little more than that. For computing connected components and performing breadth-first search, we match the running times of standard algorithms that have no memory restrictions, for depth-first search and related problems we come within a factor of \Theta(\log\log n), and for computing minimum spanning forests and single-source shortest-paths trees we come close for sparse input graphs.
Amr Elmasry, Torben Hagerup, Frank Kammer
STACS1
2015 Counting inversions adaptively
Amr Elmasry
Inf. Process. Lett.1
2014 Optimal Time-Space Tradeoff for the 2D Convex-Hull Problem
Amr Elmasry
ESA2
2014 Selection from read-only memory with limited workspace
Amr Elmasry, Daniel Dahl Juhl, Jyrki Katajainen, S. Srinivasa Rao 0001
Theor. Comput. Sci.1
2013 Selection from Read-Only Memory with Limited Workspace
Amr Elmasry, Daniel Dahl Juhl, Jyrki Katajainen, S. Srinivasa Rao 0001
COCOON1
2013 Weak Heaps and Friends: Recent Developments
Stefan Edelkamp, Amr Elmasry, Jyrki Katajainen, Armin Weiß
IWOCA2
2013 In-Place Binary Counters
Amr Elmasry, Jyrki Katajainen
MFCS1
2013 Priority Queues and Sorting for Read-Only Data
abstract
We revisit the random-access-machine model in which the input is given on a read-only random-access media, the output is to be produced to a write-only sequential-access media, and in addition there is a limited random-access workspace. The length of the input is N elements, the length of the output is limited by the computation itself, and the capacity of the workspace is O ( S + w ) bits, where S is a parameter specified by the user and w is the number of bits per machine word. We present a state-of-the-art priority queue—called an adjustable navigation pile—for this model. Under some reasonable assumptions, our priority queue supports minimum and insert in O (1) worst-case time and extract in \(O(N/S + \lg S)\) worst-case time, where \(\lg N \leq S \leq N/\lg N\) . We also show how to use this data structure to simplify the existing optimal \(O(N^2/S + N \lg S)\) -time sorting algorithm for this model. These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Tetsuo Asano, Amr Elmasry, Jyrki Katajainen
TAMC2
2013 Branchless Search Programs
Amr Elmasry, Jyrki Katajainen
SEA1
2013 On the hierarchy of distribution-sensitive properties for data structures
Amr Elmasry, Arash Farzan, John Iacono
Acta Informatica1
2012 A Catalogue of Algorithms for Building Weak Heaps
Stefan Edelkamp, Amr Elmasry, Jyrki Katajainen
IWOCA2
2012 In-place Heap Construction with Optimized Comparisons, Moves, and Cache Misses
Jingsen Chen, Stefan Edelkamp, Amr Elmasry, Jyrki Katajainen
MFCS3
2012 Improved Address-Calculation Coding of Integer Arrays
Amr Elmasry, Jyrki Katajainen, Jukka Teuhola
SPIRE1
2012 Branch Mispredictions Don't Affect Mergesort
Amr Elmasry, Jyrki Katajainen, Max Stenmark
SEA1
2012 An O(n+m) Certifying Triconnnectivity Algorithm for Hamiltonian Graphs
Amr Elmasry, Kurt Mehlhorn, Jens M. Schmidt
Algorithmica1
2012 On the size of the subset partial order
Amr Elmasry
Inf. Process. Lett.1
2012 Two Skew-Binary Numeral Systems and One Application
Amr Elmasry, Claus Jensen, Jyrki Katajainen
Theory Comput. Syst.1
2011 Dynamic Range Majority Data Structures
Amr Elmasry, Meng He 0001, J. Ian Munro, Patrick K. Nicholson
ISAAC1
2011 Two Constant-Factor-Optimal Realizations of Adaptive Heapsort
Stefan Edelkamp, Amr Elmasry, Jyrki Katajainen
IWOCA2
2011 A Unifying Property for Distribution-Sensitive Priority Queues
Amr Elmasry, Arash Farzan, John Iacono
IWOCA1
2010 The Longest Almost-Increasing Subsequence
Amr Elmasry
COCOON1
2010 The Violation Heap: A Relaxed Fibonacci-Like Heap
Amr Elmasry
COCOON1
2010 Pairing Heaps with Costless Meld
Amr Elmasry
ESA (2)1
2010 On the Approximability of the Maximum Interval Constrained Coloring Problem
Stefan Canzar, Khaled M. Elbassioni, Amr Elmasry, Rajiv Raman 0001
ISAAC (2)3
2010 Why Depth-First Search Efficiently Identifies Two and Three-Connected Graphs
Amr Elmasry
ISAAC (2)1
2010 The longest almost-increasing subsequence
Amr Elmasry
Inf. Process. Lett.1
2009 Pairing heaps with O(log log n) decrease cost
abstract
We give a variation of the pairing heaps for which the time bounds for all the operations match the lower bound proved by Fredman for a family of similar self-adjusting heaps. Namely, our heap structure requires O(1) for insert and find-min, O(log n) for delete-min, and O(log log n) for decrease-key and meld (all the bounds are in the amortized sense except for find-min).
Amr Elmasry
SODA1
2009 Computing the subset partial order for dense families of sets
Amr Elmasry
Inf. Process. Lett.1
2008 Adaptive sorting: an information theoretic perspective
Amr Elmasry, Michael L. Fredman
Acta Informatica1
2008 Two-tier relaxed heaps
Amr Elmasry, Claus Jensen, Jyrki Katajainen
Acta Informatica1
2008 Multipartite priority queues
abstract
We introduce a framework for reducing the number of element comparisons performed in priority-queue operations. In particular, we give a priority queue which guarantees the worst-case cost of O (1) per minimum finding and insertion, and the worst-case cost of O (log n ) with at most log n + O (1) element comparisons per deletion, improving the bound of 2 log n + O (1) known for binomial queues. Here, n denotes the number of elements stored in the data structure prior to the operation in question, and log n equals log 2 (max {2, n}). As an immediate application of the priority queue developed, we obtain a sorting algorithm that is optimally adaptive with respect to the inversion measure of disorder, and that sorts a sequence having n elements and I inversions with at most n log ( I / n ) + O ( n ) element comparisons.
Amr Elmasry, Claus Jensen, Jyrki Katajainen
ACM Trans. Algorithms1
2006 Two-Tier Relaxed Heaps
Amr Elmasry, Claus Jensen, Jyrki Katajainen
ISAAC1
2006 Distribution-Sensitive Construction of Minimum-Redundancy Prefix Codes
Ahmed A. Belal, Amr Elmasry
STACS2
2006 Verification of minimum-redundancy prefix codes
abstract
We show that verifying a given prefix code for optimality requires /spl Omega/(nlogn) time, indicating that the verification problem is not asymptotically easier than the construction problem. Alternatively, we give linear-time verification algorithms for several special cases that are either typical in practice or theoretically interesting.
Ahmed A. Belal, Amr Elmasry
IEEE Trans. Inf. Theory2
2005 Finding maximum-cost minimum spanning trees
abstract
Summary form only given. Consider the scenario in which a start-up communication company charges its network users by the cost of the minimum spanning tree (MST) they use in their protocols. Wanting to increase their profits, they aim at maximizing the cost of the MST of their network. We consider two different cases. In the first case, the company has a set of links with fixed cost vector W and wants to configure the network so that the MST of the network has the maximum possible cost. In the second case, the network topology is fixed, but the costs on the links assume d different values W/sub 1/, W/sub 2/, ..., W/sub d/ over the day. The company wants to fix the link costs to a value W~ = /spl Sigma//sub i/ p/sub i/ w/sub i/, for some weights p/sub 1/, p/sub 2/, ..., p/sub d/ where 0 /spl les/ p/sub i/ /spl les/ 1 and /spl Sigma//sub i/p/sub i/ = 1, so that the resulting network has a maximum-cost MST.
Ahmed A. Belal, Amr Elmasry
AICCSA2
2005 An Indexing Method for Answering Queries on Moving Objects
Khaled M. Elbassioni, Amr Elmasry, Ibrahim Kamel
Distributed Parallel Databases2
2004 On the sequential access theorem and deque conjecture for splay trees
Amr Elmasry
Theor. Comput. Sci.1
2003 An Efficient Indexing Scheme for Multi-dimensional Moving Objects
Khaled M. Elbassioni, Amr Elmasry, Ibrahim Kamel
ICDT2
2003 Three Sorting Algorithms Using Priority Queues
Amr Elmasry
ISAAC1
2003 Adaptive Sorting and the Information Theoretic Lower Bound
Amr Elmasry, Michael L. Fredman
STACS1
2003 Distribution-Sensitive Binomial Queues
Amr Elmasry
WADS1
2002 Priority Queues, Pairing, and Adaptive Sorting
Amr Elmasry
ICALP1
1998 Reaching the Bound in the (2, n) merging Problem
Ahmed A. Belal, Amr Elmasry
Inf. Sci.2