Course Descriptions for Core Courses in CSE

B. Tech.

CSE 104 – Computer Programming

Credits: 4

Prerequisites: Nil

Contents: Basics of Programming, Primitive types, Expressions, Decision making, Iteration, Function, String Manipulation, Recursion, Pointer, Array, Structure & Union, Basic I/O, File handling, Dynamic Memory Allocation, Debugging

CSE 215 – Data Structures

Credits: 4

Prerequisites: CS104

Contents: Introduction, Abstract Data Types, Arrays, Vector, Linked-Lists, Stacks, Queues, Set, Map, Trees, Heap, Hash table, Graphs, Complexity analysis, Advanced topics, Application of Data structures

CSE 216 – Computer Organization and Architecture

Credits: 4

Prerequisites: CS104

Contents: Introduction to ComputerSystems, Data Representation, Performance analysis, Instruction Set Architecture (ISA), Assembly language level (Assembler, Linker, Loader), CPU organization, Pipelining, Memory Organization, I/O Organization, Modern Architectures

CSE 219 – Discrete Mathematical Structures

Credits: 4

Prerequisites: NIL

Contents: Logic (proposition, predicate), Logic Operators, Set Theory, Warshall's algorithm, applications to counting, Recurrence relations, Number Theory (Mathematical Induction, Congruence Relations), Group Theory, Lagrange's Theorem, Graph Theory (Path, cycles, Handshaking Problem)

CSE 220 – Database Management Systems

Credits: 4

Prerequisites: CSE 215

Contents: Introduction, Data Models, E-R Model, Relational Data Model, Relational Algebra, SQL, Relational Database Design, Transaction management, Data Storage and Indexes, Query processing, advanced topics

CSE 222 – Operating Systems

Credits: 4

Prerequisites: CSE 215, CSE 216

Contents: Introduction, Processes and Threads, CPU scheduling, Memory Management, File Management, Disk Management, I/O Management, Modern Operating Systems

CSE 325 – Design and Analysis of Algorithms

Credits: 4

Prerequisites: CSE 219, CSE 104

Contents: Order Analysis, Solving Recurrence Equations, Sorting and Divide and Conquer Strategy, Dynamic Programming, Greedy Methods, Graph Algorithms, KMP Pattern matching algorithm, Information theory, Basic concepts of P, NP, NP-hard, NP-complete problems

CSE 332 – Computer Networks

Credits: 4

Prerequisites: CSE 215

Contents: Introduction, OSI and TCP/IP Models, Physical Layer, Data Link Layer, MAC Layer, Network Layer, Transport Layer, Application Layer, Network Security, Advanced topics in networks

CSE 331 – Theory of Computation

Credits: 4

Prerequisites: CSE 325

Contents: Models of computation -- classification, properties and equivalences .Regular languages models: finite state machines (deterministic and non- deterministic), regular grammars, regular expressions, equivalence of deterministic and non-deterministic machines and of the three models. Properties: closure, decidability, Church's thesis. Properties: closure, decidability,

CSE 437 – Compiler Design

Credits: 4

Prerequisites: CSE 219, CSE 331

Contents: Compiler, Translator, Interpreter, Phases of Compiler, One pass and Multi-pass Compilers, LEX, CFG Ambiguity of Grammars, Shift Reduced Parsing, LL grammars & passers error handling of LL parser. LR parsers, Construction of SLR, Syntax directed definitions, Storage Organization, Definition of basic block control flow graphs, DAG, Code Generator.