scispace - formally typeset
Search or ask a question

Showing papers by "Michael T. Goodrich published in 2013"


Proceedings Article
01 Jan 2013
TL;DR: The University of California, Irvine 7.7.2018 as discussed by the authors 7.5.2018 2.0/1/1-1/2/1.0 0.0
Abstract: University of California, Irvine 7.

49 citations


Journal ArticleDOI
TL;DR: In this article, the authors study methods for drawing trees with perfect angular resolution, i.e., with angles at each node of a tree equal to 2ππ/d(v)
Abstract: We study methods for drawing trees with perfect angular resolution, i.e., with angles at each node $$v$$ equal to $$2\pi /d(v)$$. We show:1.Any unordered tree has a crossing-free straight-line drawing with perfect angular resolution and polynomial area.2.There are ordered trees that require exponential area for any crossing-free straight-line drawing having perfect angular resolution.3.Any ordered tree has a crossing-free Lombardi-style drawing (where each edge is represented by a circular arc) with perfect angular resolution and polynomial area. Thus, our results explore what is achievable with straight-line drawings and what more is achievable with Lombardi-style drawings, with respect to drawings of trees with perfect angular resolution.

15 citations


Book
18 Mar 2013
TL;DR: Data Structures and Algorithms in Python is the first authoritative object-oriented book available for Python data structures, designed to provide a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation.
Abstract: Based on the authors market leading data structures books in Java and C++, thisbook offers a comprehensive, definitive introduction to data structures in Python by authoritative authors Data Structures and Algorithms in Python is the first authoritative object-oriented book available for Python data structures Designed to provide a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation, the text will maintain the same general structure as Data Structures and Algorithms in Java and Data Structures and Algorithms in C++Begins by discussing Pythons conceptually simple syntax, which allows for a greater focus on concepts Employs a consistent object-oriented viewpoint throughout the text Presents each data structure using ADTs and their respective implementations and introduces important design patterns as a means to organize those implementations into classes, methods, and objects Provides a thorough discussion on the analysis and design of fundamental data structures Includes many helpful Python code examples, with source code provided on the website Uses illustrations to present data structures and algorithms, as well as their analysis, in a clear, visual manner Provides hundreds of exercises that promote creativity, help readers learn how to think like programmers, and reinforce important concepts Contains many Python-code and pseudo-code fragments, and hundreds of exercises, which are divided into roughly 40% reinforcement exercises, 40% creativity exercises, and 20% programming projects

11 citations


Posted Content
TL;DR: This work formalizes a problem they call combinatorial pair testing (CPT), which has applications to the identification of uncooperative or unproductive participants in pair programming, massively distributed computing, and crowdsourcing environments.
Abstract: We formalize a problem we call combinatorial pair testing (CPT), which has applications to the identification of uncooperative or unproductive participants in pair programming, massively distributed computing, and crowdsourcing environments. We give efficient adaptive and nonadaptive CPT algorithms and we show that our methods use an optimal number of testing rounds to within constant factors. We also provide an empirical evaluation of some of our methods.

9 citations


Journal ArticleDOI
TL;DR: This paper studies sparsity-exploiting Mastermind algorithms for attacking the privacy of an entire database of character strings or vectors, such as DNA strings, movie ratings, or social network friendship data and demonstrates that relatively few nonadaptive queries are needed to recover a large majority of each database.
Abstract: In this paper, we study sparsity-exploiting Mastermind algorithms for attacking the privacy of an entire database of character strings or vectors, such as DNA strings, movie ratings, or social network friendship data. Based on reductions to nonadaptive group testing, our methods are able to take advantage of minimal amounts of privacy leakage, such as contained in a single bit that indicates if two people in a medical database have any common genetic mutations, or if two people have any common friends in an online social network. We analyze our Mastermind attack algorithms using theoretical characterizations that provide sublinear bounds on the number of queries needed to clone the database, as well as experimental tests on genomic information, collaborative filtering data, and online social networks. By taking advantage of the generally sparse nature of these real-world databases and modulating a parameter that controls query sparsity, we demonstrate that relatively few nonadaptive queries are needed to recover a large majority of each database.

8 citations


Proceedings ArticleDOI
23 Dec 2013
TL;DR: This paper describes the first known external-memory and cache-oblivious algorithms for computing betweenness centrality, and describes general algorithms for networks with weighted and unweighted edges and a specialized algorithm with small diameters, as is common in social networks exhibiting the “small worlds” phenomenon.
Abstract: Betweenness centrality is one of the most well-known measures of the importance of nodes in a social-network graph. In this paper we describe the first known external-memory and cache-oblivious algorithms for computing betweenness centrality. We present four different external-memory algorithms exhibiting various tradeoffs with respect to performance. Two of the algorithms are cache-oblivious. We describe general algorithms for networks with weighted and unweighted edges and a specialized algorithm for networks with small diameters, as is common in social networks exhibiting the “small worlds” phenomenon.

8 citations


Book ChapterDOI
12 Aug 2013
TL;DR: In this article, the authors formalize combinatorial pair testing (CPT), which has applications to the identification of uncooperative or unproductive participants in pair programming, massively distributed computing, and crowdsourcing environments.
Abstract: We formalize a problem we call combinatorial pair testing (CPT), which has applications to the identification of uncooperative or unproductive participants in pair programming, massively distributed computing, and crowdsourcing environments. We give efficient adaptive and nonadaptive CPT algorithms and we show that our methods use an optimal number of testing rounds to within constant factors. We also provide an empirical evaluation of some of our methods.

6 citations


Posted Content
TL;DR: In this paper, the authors introduce the problem of performing set-difference range queries, where answers to queries are set-theoretic symmetric differences between sets of items in two geometric ranges.
Abstract: We introduce the problem of performing set-difference range queries, where answers to queries are set-theoretic symmetric differences between sets of items in two geometric ranges. We describe a general framework for answering such queries based on a novel use of data-streaming sketches we call signed symmetric-difference sketches. We show that such sketches can be realized using invertible Bloom filters (IBFs), which can be composed, differenced, and searched so as to solve set-difference range queries in a wide range of scenarios.

1 citations


Book ChapterDOI
23 Sep 2013
TL;DR: In this paper, the authors study a 3D analogue to the well-known graph visualization approach known as arc diagrams and provide several algorithms that achieve good angular resolution for 3D arc diagrams, even for cases when the arcs must project to a given 2D straight line drawing of the input graph.
Abstract: We study a three-dimensional analogue to the well-known graph visualization approach known as arc diagrams. We provide several algorithms that achieve good angular resolution for 3D arc diagrams, even for cases when the arcs must project to a given 2D straight-line drawing of the input graph. Our methods make use of various graph coloring algorithms, including an algorithm for a new coloring problem, which we call localized edge coloring.

Posted Content
TL;DR: This work provides several algorithms that achieve good angular resolution for 3D arc diagrams, even for cases when the arcs must project to a given 2D straight-line drawing of the input graph.
Abstract: We study a three-dimensional analogue to the well-known graph visualization approach known as arc diagrams. We provide several algorithms that achieve good angular resolution for 3D arc diagrams, even for cases when the arcs must project to a given 2D straight-line drawing of the input graph. Our methods make use of various graph coloring algorithms, including an algorithm for a new coloring problem, which we call localized edge coloring.

Proceedings Article
01 Jun 2013
TL;DR: It is shown that data-streaming sketches can be realized using invertible Bloom filters (IBFs), which can be composed, differenced, and searched so as to solve set-difference range queries in a wide range of scenarios.
Abstract: We introduce the problem of performing set-difference range queries, where answers to queries are set-theoretic symmetric differences between sets of items in two geometric ranges. We describe a general framework for answering such queries based on a novel use of data-streaming sketches we call signed symmetric-difference sketches. We show that such sketches can be realized using invertible Bloom filters (IBFs), which can be composed, differenced, and searched so as to solve set-difference range queries in a wide range of scenarios. ∗Dept. of Comp. Sci., U. of CA, Irvine, eppstein(at)uci.edu †Dept. of Comp. Sci., U. of CA, Irvine, goodrich(at)uci.edu ‡Dept. of Comp. Sci., U. of CA, Irvine, jsimons(at)uci.edu 0 ar X iv :1 30 6. 34 82 v1 [ cs .D S] 1 4 Ju n 20 13 (a) (b) Figure 1: Illustrating the set-difference range query problem. The images in (a) and (b) have four major differences, three of which are inside the common query range. The image (a) is a public-domain engraving of an astronomer by Albrecht Durer, from the title page of Messahalah, De scientia motus orbis (1504).