Check out my first novel, midnight's simulacra!
CS GRE: Difference between revisions
From dankwiki
No edit summary |
|||
Line 74: | Line 74: | ||
* Theory and Mathematical Backgrouns | * Theory and Mathematical Backgrouns | ||
**Thomas Cormen, Charles Leiserson and Ron Rivest, ''[http://www.amazon.com/Introduction-Algorithms-Second-Thomas-Cormen/dp/0262032937 Introduction to Algorithms, 1st Edition]'' | **Thomas Cormen, Charles Leiserson and Ron Rivest, ''[http://www.amazon.com/Introduction-Algorithms-Second-Thomas-Cormen/dp/0262032937 Introduction to Algorithms, 1st Edition]'' | ||
**Michael Sipser, ''[http://www.amazon.com/Introduction-Theory-Computation-Michael-Sipser/dp/053494728X Introduction to the Theory of Computation, 1st Edition]'' |
Revision as of 16:02, 1 August 2009
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))
Subject Material
This was taken from the ETS CS GRE page, 2009-07-30 1500 UTC.
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.
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 Backgrouns
- Thomas Cormen, Charles Leiserson and Ron Rivest, Introduction to Algorithms, 1st Edition
- Michael Sipser, Introduction to the Theory of Computation, 1st Edition