Check out my first novel, midnight's simulacra!
CS GRE
From dankwiki
Anything above a 800 (it's on a 200-990-point scale) seems pretty good. It appears that quality single-volume preparation materials cannot be had at any price. Perhaps one ought be written?
- ETS Practice Booklet (PDF), from the Computer Science Exam page
(This second link is pretty dubiously-formed; YMMV. Go to the GRE page, click on Subject Info details, click on Computer Science --Dank 14:58, 30 July 2009 (UTC))
- UCB notes from 2001
- GT notes from 2006
- 100 shareware CS GRE-like problems from Christopher Scaffidi
<countdown time="10/10/2009 8:30 AM UTC-0500"><D> days, <H> hours, <M> minutes, seconds until the 2009-10-10 CS GRE</countdown>
Books I'm using for general preparation
- Software Systems and Methodology
- Peter Van Roy and Seif Haridi, Concepts, Techniques, and Models of Computer Programming. First edition, fourth printing.
- Harold Abelson and Gerald Jay Sussman, Structure and Interpretation of Computer Programs. Second edition, first printing, and online version.
- Computer Organization and Architecture
- John Hennessy and David Patterson, Computer Architecture: A Quantitative Approach. Second and fourth editions (first printing each).
- Stephen Ward and Robert Halstead, Computation Structures. First edition, first printing.
- Theory and Mathematical Background
- Thomas Cormen, Charles Leiserson and Ron Rivest, Introduction to Algorithms. First edition, 19th printing.
- Michael Sipser, Introduction to the Theory of Computation. First edition, first printing.
- Michael Garey and David Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness. First edition, 26th printing.
Further texts are listed in the applicable sections below.
Online courseware
- The Stanford Engineering Everywhere project at the Stanford School of Engineering
- MIT's OpenCourseware project at the Open Courseware Consortium
Subject Material
Outline taken from the ETS CS GRE page, 2009-07-30 1500 UTC)
Area vocabulary listings follow each area in small, italicized, bolded text | References and Supplements |
---|---|
SOFTWARE SYSTEMS AND METHODOLOGY - 40% | |
Data Organization | |
Data types | |
Data structures and implementation techniques | |
Program control and structure | |
Iteration and recursion | |
Procedures, functions, methods, and exception handlers | |
Concurrency, communication, and synchronization | |
Programming languages and notation | |
Constructs for data organization and program control | |
Scope, binding, and parameter passing | |
Expression evaluation | |
Software engineering | |
Formal specifications and assertions
|
|
Verification techniques
|
|
Software development models, patterns, and tools | |
Systems | |
Compilers, interpreters, and run-time systems
|
|
Operating systems, including resource management and protection/security | |
Networking, Internet, and distributed systems
|
|
Databases | |
System analysis and development tools | |
COMPUTER ORGANIZATION AND ARCHITECTURE - 15% | |
Digital logic design | |
Implementation of combinational and sequential circuits | |
Optimization and analysis | |
Processors and control units | |
Instruction sets | |
Computer arithmetic and number representation signed magnitude, one's complement, two's complement, binary coded decimal, IEEE 754 | |
Register and ALU organization | |
Data paths and control sequencing | |
Memories and their hierarchies | |
Performance, implementation, and management | |
Cache, main, and secondary storage | |
Virtual memory, paging, and segmentation | |
Networking and communications | |
Interconnect structures (e.g., buses, switches, routers) | |
I/O systems and protocols | |
Synchronization | |
High-performance architectures | |
Pipelining superscalar and out-of-order execution processors | |
Parallel and distributed architectures | |
THEORY AND MATHEMATICAL BACKGROUND - 40% | |
Algorithms and complexity | |
Exact and asymptotic analysis of specific algorithms | |
Algorithmic design techniques (e.g. greedy, dynamic programming, divide and conquer) | Divide+Conquer, Dynamic Programming and Greedy algorithm lectures from MIT's 6.046J |
Upper and lower bounds on the complexity of specific problems | |
Computational complexity, including NP-completeness | |
Automata and language theory | |
Models of computation (finite automata, Turing machines) | |
Formal languages and grammars (regular and context free) | |
Decidability | |
Discrete structures | |
Mathematical logic | |
Elementary combinatorics and graph theory | |
Discrete probability, recurrence relations, and number theory | |
OTHER TOPICS - 5% "Example areas include..." | |
Numerical analysis | |
Artificial intelligence | |
Computer graphics | |
Cryptography | |
Security | |
...and social issues. |