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 (I've heard the stat that 8% of takers get a perfect score). 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
Books used to prepare
- Software Systems and Methodology
- Peter Van Roy and Seif Haridi, Concepts, Techniques, and Models of Computer Programming, 1st Edition
- Harold Abelson and Gerald Jay Sussman, Structure and Interpretation of Computer Programs, 2nd Edition
- Computer Organization and Architecture
- John Hennessy and David Patterson, Computer Architecture: A Quantitative Approach, 4th Edition
- Theory and Mathematical Background
- Thomas Cormen, Charles Leiserson and Ron Rivest, Introduction to Algorithms, 1st Edition
- Michael Sipser, Introduction to the Theory of Computation, 1st Edition
Subject Material
Area (outline taken from the ETS CS GRE page, 2009-07-30 1500 UTC) | References |
---|---|
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 | |
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) | |
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. |