Line 59: Line 59:
 
*Algorithm design techniques: greedy, dynamic programming and divide‐and‐conquer.
 
*Algorithm design techniques: greedy, dynamic programming and divide‐and‐conquer.
 
*Graph search, minimum spanning trees, shortest paths.
 
*Graph search, minimum spanning trees, shortest paths.
 +
'''Space and time complexity''' restricted to only worst case.
 +
'''Connected components''' removed
 +
'''Tree and graph traversals''' removed. But these are implied in Data Structure portion.
 +
'''Basic concepts of complexity classes – P, NP, NP-hard, NP-complete. ''' removed. So, these definitions needn't be studied but reduction is there in Theory of Computation anyway.
 +
  
 
==Theory of Computation==
 
==Theory of Computation==
 
*Regular expressions and finite automata.  
 
*Regular expressions and finite automata.  
 
*Context-free grammars and push-down automata.  
 
*Context-free grammars and push-down automata.  
*Regular and contex-free languages, pumping lemma.  
+
*Regular and context-free languages, pumping lemma.  
 
*Turing machines and undecidability.
 
*Turing machines and undecidability.
 +
'''pumping lemma''' newly added.
 +
'''Recursively enumerable sets''' removed but Turing machines are there.
  
 
==Compiler Design==
 
==Compiler Design==

Revision as of 20:33, 1 August 2015

Discrete Mathematics

  • Propositional and first order logic.
  • Sets, relations, functions, partial orders and lattices. Groups.
  • Graphs: connectivity, matching, coloring.
  • Combinatorics: counting, recurrence relations, generating functions.

Boolean Algebra moved to Digital Logic. Permutations; Combinations removed from Combinatorics but being basic and counting being there this doesn't really matter. asymptotics removed, but basics are in asymptotic analysis part of Algorithms spanning trees; Cut vertices & edges; covering; independent sets; Planarity; Isomorphism removed. But based on other topics this just means Planarity and isomorphism are removed.

Linear Algebra

  • Matrices, determinants
  • System of linear equations
  • Eigenvalues and eigenvectors
  • LU decomposition

LU decomposition added here from Numerical methods which was removed as a whole otherwise.

Calculus

  • Limits, continuity and differentiability.
  • Maxima and minima. Mean value theorem.
  • Integration.

Theorems of integral calculus, evaluation of definite & improper integrals, Partial derivatives, Total derivatives is removed and Integration added. So, this would mean we can expect only simple integration questions.

Probability

  • Random variables.
  • Uniform, normal, exponential, poisson and binomial distributions.
  • Mean, median, mode and standard deviation.
  • Conditional probability and Bayes theorem.

Bayes theorem newly added but it was implicitly part of conditional probability

Digital Logic

  • Boolean algebra.
  • Combinational and sequential circuits. Minimization.
  • Number representations and computer arithmetic (fixed and floating point).

Boolean algebra added to here from set theory & algebra

Computer Organization and Architecture

  • Machine instructions and addressing modes.
  • ALU, data‐path and control unit.
  • Instruction pipelining.
  • Memory hierarchy: cache, main memory and secondary storage;
  • I/O interface (interrupt and DMA mode).

Memory interface part is removed. So, questions on RAM won't be there.

Programming and Data Structures

  • Programming in C. Recursion.
  • Arrays, stacks, queues, linked lists, trees, binary search trees, binary heaps, graphs.

Functions, Parameter passing, Scope, Binding; Abstract data types removed. So, questions like pass by reference, static-dynamic scopes, etc won't be there. Graphs added here.

Algorithms

  • Searching, sorting, hashing.
  • Asymptotic worst case time and space complexity.
  • Algorithm design techniques: greedy, dynamic programming and divide‐and‐conquer.
  • Graph search, minimum spanning trees, shortest paths.

Space and time complexity restricted to only worst case. Connected components removed Tree and graph traversals removed. But these are implied in Data Structure portion. Basic concepts of complexity classes – P, NP, NP-hard, NP-complete. removed. So, these definitions needn't be studied but reduction is there in Theory of Computation anyway.


Theory of Computation

  • Regular expressions and finite automata.
  • Context-free grammars and push-down automata.
  • Regular and context-free languages, pumping lemma.
  • Turing machines and undecidability.
pumping lemma newly added. 
Recursively enumerable sets removed but Turing machines are there. 

Compiler Design

  • Lexical analysis, parsing, syntax-directed translation.
  • Runtime environments.
  • Intermediate code generation.

Operating System

  • Processes, threads, inter‐process communication, concurrency and synchronization.
  • Deadlock.
  • CPU scheduling.
  • Memory management and virtual memory.
  • File systems.

Databases

  • ER‐model. Relational model:
  • relational algebra, tuple calculus, SQL.
  • Integrity constraints,
  • normal forms.
  • File organization, indexing (e.g., B and B+ trees).
  • Transactions and concurrency control.

Computer Networks

  • Concept of layering. LAN technologies (Ethernet).
  • Flow and error control techniques,
  • switching.
  • IPv4/IPv6,
  • routers and routing algorithms (distance vector, link state).
  • TCP/UDP and sockets, congestion control.
  • Application layer protocols (DNS, SMTP, POP, FTP, HTTP).
  • Basics of Wi-Fi.
  • Network security: authentication, basics of public key and private key cryptography, digital signatures and certificates, firewalls.

Discrete Mathematics[edit]

  • Propositional and first order logic.
  • Sets, relations, functions, partial orders and lattices. Groups.
  • Graphs: connectivity, matching, coloring.
  • Combinatorics: counting, recurrence relations, generating functions.

Boolean Algebra moved to Digital Logic. Permutations; Combinations removed from Combinatorics but being basic and counting being there this doesn't really matter. asymptotics removed, but basics are in asymptotic analysis part of Algorithms spanning trees; Cut vertices & edges; covering; independent sets; Planarity; Isomorphism removed. But based on other topics this just means Planarity and isomorphism are removed.

Linear Algebra[edit]

  • Matrices, determinants
  • System of linear equations
  • Eigenvalues and eigenvectors
  • LU decomposition

LU decomposition added here from Numerical methods which was removed as a whole otherwise.

Calculus[edit]

  • Limits, continuity and differentiability.
  • Maxima and minima. Mean value theorem.
  • Integration.

Theorems of integral calculus, evaluation of definite & improper integrals, Partial derivatives, Total derivatives is removed and Integration added. So, this would mean we can expect only simple integration questions.

Probability[edit]

  • Random variables.
  • Uniform, normal, exponential, poisson and binomial distributions.
  • Mean, median, mode and standard deviation.
  • Conditional probability and Bayes theorem.

Bayes theorem newly added but it was implicitly part of conditional probability

Digital Logic[edit]

  • Boolean algebra.
  • Combinational and sequential circuits. Minimization.
  • Number representations and computer arithmetic (fixed and floating point).

Boolean algebra added to here from set theory & algebra

Computer Organization and Architecture[edit]

  • Machine instructions and addressing modes.
  • ALU, data‐path and control unit.
  • Instruction pipelining.
  • Memory hierarchy: cache, main memory and secondary storage;
  • I/O interface (interrupt and DMA mode).

Memory interface part is removed. So, questions on RAM won't be there.

Programming and Data Structures[edit]

  • Programming in C. Recursion.
  • Arrays, stacks, queues, linked lists, trees, binary search trees, binary heaps, graphs.

Functions, Parameter passing, Scope, Binding; Abstract data types removed. So, questions like pass by reference, static-dynamic scopes, etc won't be there. Graphs added here.

Algorithms[edit]

  • Searching, sorting, hashing.
  • Asymptotic worst case time and space complexity.
  • Algorithm design techniques: greedy, dynamic programming and divide‐and‐conquer.
  • Graph search, minimum spanning trees, shortest paths.

Theory of Computation[edit]

  • Regular expressions and finite automata.
  • Context-free grammars and push-down automata.
  • Regular and contex-free languages, pumping lemma.
  • Turing machines and undecidability.

Compiler Design[edit]

  • Lexical analysis, parsing, syntax-directed translation.
  • Runtime environments.
  • Intermediate code generation.

Operating System[edit]

  • Processes, threads, inter‐process communication, concurrency and synchronization.
  • Deadlock.
  • CPU scheduling.
  • Memory management and virtual memory.
  • File systems.

Databases[edit]

  • ER‐model. Relational model:
  • relational algebra, tuple calculus, SQL.
  • Integrity constraints,
  • normal forms.
  • File organization, indexing (e.g., B and B+ trees).
  • Transactions and concurrency control.

Computer Networks[edit]

  • Concept of layering. LAN technologies (Ethernet).
  • Flow and error control techniques,
  • switching.
  • IPv4/IPv6,
  • routers and routing algorithms (distance vector, link state).
  • TCP/UDP and sockets, congestion control.
  • Application layer protocols (DNS, SMTP, POP, FTP, HTTP).
  • Basics of Wi-Fi.
  • Network security: authentication, basics of public key and private key cryptography, digital signatures and certificates, firewalls.