0% found this document useful (0 votes)
3 views27 pages

SY_NEP-2020_SEM-I_2023_Pattern_Syllabus

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 27

Department of Information Technology

SY. B. Tech 2023 Scheme (As per NEP 2020)


Semester- III
Evaluation Scheme
Teaching

Category
Total

Credits
Course
Scheme Theory Practical
ourse Code Name of Course Marks
Total
L T P TAE CAE ESE INT EXT
Hours
SEMESTER-III
23UITBSL2301 Discrete Mathematics
BS-05 3 - - 3 3 20 20 60 - - 100
and Graph Theory
Computer
23UITL2302
Architecture & MDM-01 3 - - 3 3 20 20 60 - 100
Organization
23UITL2303
Computer Networks PC-02 3 2 5 4 20 20 60 25 - 125
23UITP2303
23UITL2304 Object Oriented
PC-03 3 - 2 5 4 20 20 60 25 - 125
23UITP2304 Programming
23UITL2305 Data Structures and
PC-04 3 - 2 5 4 20 20 60 - 25 125
23UITP2305 Algorithms
23UITP2306 Python Programming MDM-02 - - 4 4 2 - - - 25 25 50
23UITHUL2307
Life Skill / Language EMC-01 - - 2 2 1 - - - 25 - 25
23UITHUL2308 Environmental
HSSM-01 2 - - 2 - - - - - - AU
Science
TOTAL 17 - 12 29 21 100 100 300 100 50 650
23UITBSL2301: Discrete Mathematics and Graph
Theory
Teaching Scheme: Credit: Examination Scheme:

Lectures: 03 Hrs./Week 3 TAE: 20 Marks, CAE: 20 Marks, ESE :60 Marks


Prerequisite (If any):
Course Objectives:

1. To gain sound knowledge to formulate and solve problems with sets and propositions

2. To identify types of relation, formulate and solve problems with relations and functions.
3. To understand and solve counting problems by applying elementary counting techniques for the
problems of discrete probability.

4. To understand Graph and Tree terminologies and models to be applied in real life problems.

5. To explore various types of algebraic structures and its applications.

Course Outcomes: After completing this course, students will be able to


CO1: Solve problems related to set theory and proof techniques

CO2: Identify various relations and functions to provide solution to computational problems.

CO3: Use the basic counting techniques in engineering problems

CO4: Understand how graph and tree concepts are used to solve problems arising in the computer
science.
CO5: Identify fundamental algebraic structures.
Course Contents Hrs.
Unit I: Mathematical Logic and Set Theory 6
Applications of set theory and propositional logic Set Theory: sets and classes, Finite Sets,
Power Set, Cardinality of finite sets, Cartesian Product, Properties of Sets, Operations on sets,
Laws of algebra of sets, cardinality of a set, recursively defined set, inclusion exclusion
principle.
Logic & Proofs: Introduction to Logic. Propositional Logic, Truth tables, Deduction,
Resolution, Predicates and Quantifiers, normal forms, Mathematical Proofs Infinite sets, well-
ordering. Countable and Uncountable sets, Negation, disjunction and conjunction, Implication
and Equivalence, Truth tables, Predicates, Quantifiers, Natural deduction, Rules of Inference,
Methods of proofs, Mathematical Induction.

Unit II: Relation and Function 6

Applications of relations and functions, Introduction to Relation and function, relation


structures on sets, properties of Binary Relations, Equivalence Relations and partitions,
Partial ordering relations sets and lattices, Hasse diagrams, Recurrence relations. Functions:
Definition, Domain, Range, Image, etc. Types of functions: Surjection, Injection, Bijection,
Inverse, Identity, Composition of Functions, Generating Function.
Unit III: Counting and Discrete Probability 6

Application of counting techniques and probability in engineering science, Basic Counting


Techniques - sum and product rule, Pigeonhole Principle, Permutations and Combinations and
numerical problems, Binomial Coefficients. Discrete Probability: Probability, sample space,
event, Conditional Probability, Bayes Theorem.
Unit IV: Graph Theory 6

Application of graph theory and trees, Graphs: Basic concept of graph, Diagraphs, Multi-
Graphs, Weighted Graphs, Sub Graphs, Isomorphic graphs, Complete Graphs, Regular Graphs,
Bipartite Graphs, Operations on Graphs, Paths, Circuits, Hamiltonian and Eulerian graphs and
cycle, Travelling Salesman Problem, shortest path algorithm, Factors of Graphs, Planar Graphs,
Graph Coloring, Chromatic number. Trees: Tree Terminologies, Rooted Trees, Path Length in
Rooted Trees, Prefix Codes, Spanning Trees- Prims and Kruskal tree Fundamental Cut Sets and
Circuits, Max flow –Min Cut.
Unit V: Algebraic Structures 6
Application of algebraic structures, Introduction to algebraic structure, structured sets with
respect to binary operations, Group, Semigroup, Monoid, Ring and Field.

1. “Discrete Mathematics and Its Applications”, Kenneth H. Rosen, 7th Edition, Tata
Text McGraw-Hill, 2017, ISBN: 9780073383095.
Books 2. “Elements of Discrete Mathematics”, C. L. LIU, 4th Edition, Tata McGraw-Hill, 2017,
ISBN-10: 1259006395 ISBN-13: 978125 9006395.
1. Discrete Mathematics:
https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=534935&que
ry=computer%20networks
2. Discrete Mathematics with Applications:
E-Books https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=294091&que
ry=discrete%20mathematics
3. Introduction to Graph Theory:
https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=3019331&qu
ery=graph%20theory
1. “Discrete Mathematical Structures”, G. Shanker Rao, 2nd Edition2009, New Age
International, ISBN-10: 8122426697, ISBN-13: 9788122426694
Reference “Discrete Mathematics”, Lipschutz, Lipson, 2nd Edition, 1999, Tata McGraw-Hill,
2.
Books ISBN: 007 463710X.
3. “Graph Theory”, V. K. Balakrishnan, 1st Edition, 2004, Tata McGraw-Hill, ISBN-10: 0-
07-058718-3, ISBN-13: 9780070587182.
4. “Discrete Mathematical Structures”, B. Kolman, R. Busby and S. Ross, 4th Edition,
Pearson Education, 2002, ISBN: 8178085569.
5. “Discrete Mathematical Structures with application to Computer Science”,
J. Tremblay, R. Manohar, Tata McGraw-Hill, 2002, ISBN: 0070651426.
6. “Discrete Mathematics”, R. K. Bisht, H. S. Dhami, Oxford University Press, ISBN:
9780199452798.
Online 1. https://onlinecourses.nptel.ac.in/noc20_cs37/unit?unit=41&lesson=42
NPTEL
Material
23UITL2302: Computer Architecture and Organization

Teaching Scheme: Credit: Examination Scheme:

Lectures: 03 Hrs./Week 3 TAE: 20 Marks ,CAE: 20 Marks, ESE :60 Marks


Prerequisite (If any):
Course Objectives:
1. Understand the structure, function, and characteristics of computer systems.

2. Explain the impact of modern instruction sets on processor design.


3. Analyze memory hierarchy principles and I/O methods.
Course Outcomes: After completing the course students will be able to
CO1: Learn the different components of a modern computer, including its functional units and
computer arithmetic.
CO2: Demonstrate proficiency in memory hierarchy and I/O system analysis.
CO3: Identify the procedure involved in executing an instruction and retrieving the word from
memory.
CO4: Compare simple computer architectures and organizations based on established
performance metrics.
Course Contents Hrs.
Unit I: Foundations of Computer Architecture 6
Evolution of Computers: A Brief History Evolution of computers, Designing for
Performance, Evolution of Intel processor architecture- 4 bit to 64bit, performance
assessment. Computer architecture and computer organization: Function, Structure,
Fundamental Blocks of Computer (like CPU, I/O subsystems, memory, control unit),
Architecture of 8086, 80386, 80486. Computer Arithmetic- The Arithmetic and Logic
Unit, addition and subtraction of signed numbers, design of adder and fast adder, carry
look ahead addition, multiplication of positive numbers, signed operand multiplication,
booths algorithm, fast multiplication, integer division.
Unit II: Computer Memory System 6

Memory Sub-block: Memory organization; Technologies - ROM, RAM, EPROM, Flash, etc.,
Virtual Memories. Cache: Cache memory principles, Elements of cache design- cache
address, size, mapping functions, Cache algorithms, Cache Hierarchy, Cache coherence
protocols. Input and Output System: Peripheral devices, I/O interface, data transfer
schemes, program control, interrupt, DMA transfer, I/O Processor. Virtual Memory: Main
Memory Allocation, Virtual to Physical Address Translation, Paging, Page Placement &
Location, Page Faults, TLB in Address Translation, Handling TLB Misses & Page Faults.

Unit III: Instructions & Processor Enhancements 6

Instruction: Register set, Flags, Physical address space of X86, Data types, Addressing
Modes, X86 Instruction Set. elements of machine instruction; instruction representation
(Opcode& mnemonics, Assembly language elements); Instruction Format & 0-1-2-3
address formats, Types of operands Addressing modes; Instruction types based on
operations (functions & examples of each); key characteristics of RISC& CISC. Interrupt:
its purpose, types, classes & interrupt handling (ISR, multiple interrupts), exceptions;
instruction pipelining (operation & speed up) Multiprocessor systems: Taxonomy of
Parallel Processor Architectures, two types of MIMD clusters & SMP (organization &
benefits) & multicore processor (various Alternatives & advantages 0f multicores),
typical features of multicore intel core i7.
Unit IV: Processor Organization 6

Processor organization, Register organization- user visible registers, control and status
registers, Case Study- register organization of microprocessor 8086. Instruction Cycle-
The machine cycle and Data flow, Instruction. Pipelining- Pipelining Strategy, Basic
concepts of pipelining, Arithmetic and Instruction Pipeline, throughput and speedup,
pipeline hazards, Introduction, Logic Design Conventions, Building a Datapath – A Simple
Implementation scheme – An Overview of Pipelining – Pipelined Datapath and Control.
Data Hazards: Forwarding versus Stalling, Control Hazards, Exceptions, Parallelism via
Instructions.
UNIT V: Basic Processing Unit 6

Fundamental Concepts- register transfer, performing arithmetic or logic operations,


fetching a word from memory, storing a word in memory, Execution of a complete
instruction- branch instructions, Hardwired control. Micro-programmed control- micro
instructions, micro program sequencing, wide branch addressing, microinstruction with
next address field, pre-fetching microinstructions and emulation.

Text “Computer organization and architecture, designing for performance” by William


1.
Books Stallings , Prentice Hall ,Eighth edition
2. “Modern Digital Electronics”, R.P. Jain, Tata McGraw-Hill, Third Edition

Computer Fundamentals: Architecture & Organisation:


1. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=351917&q
uery=Computer%20Architecture%20and%20Organization%20

Basics of Computer Organization and Architecture: Problems and Solutions:


E-Books 2. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=5190778&
query=Computer%20Architecture%20and%20Organization%20

Fundamentals of Computer Organization and Architecture:


3. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=231740&q
uery=Computer%20Architecture%20and%20Organization%20

“Computer Organization and Design: The Hardware Software Interface”, D.


1.
Patterson, J. Hennessy, Fourth Edition, Morgan Kaufmann

“Computer Architecture and Organization”, John P Hays, McGraw-Hill


2.
Reference Publication, 1998, ISBN:978-1-25-902856-4, 3rd Edition.
Books “Parallel Computers – Architecture and Programming” by V. Rajaraman And C.
3.
Siva Ram Murthy.

“Computer System Architecture” By M. Morris Mano, Peter Abel ,Pearson


4.
Education, Limited

Online
NPTEL 1. https://nptel.ac.in/courses/106/105/106105163/
Material
23UITL2303: Computer Networks
Teaching Scheme: Credit: Examination Scheme:

Lectures: 03 Hrs./Week 3 TAE: 20 Marks, CAE: 20 Marks, ESE :60 Marks


Prerequisite (If any): None
Course Objectives:
1. Understand the fundamental principles and concepts of computer networking.

2. Analyze and evaluate different networking technologies and protocols.

3. Design and implement basic computer networks.

4. Identify and address common issues related to network performance, security, and management.

Course Outcomes: After completing the course, students will be able to

CO1: Explain the fundamental concepts and challenges of networking, including hardware, software,
and network reference models.
CO2: Apply appropriate error detection and correction techniques to data transmission scenarios at
the Physical and Data Link layers.
CO3: Analyze IP addressing schemes, subnetting, and routing protocols to design efficient network
topologies.
CO4: Evaluate various transport and application layer protocols, and implement security measures to
protect network communications.
Course Contents Hrs.

Unit I: Introduction to Computer Networks 6


Introduction to Networks: Applications, Hardware, Software, Benefits and Challenges of
Networking, Network Reference Models: OSI Model, TCP/IP Model, Comparison of Models
Network Devices: Routers, Switches, Firewalls, Hubs, Modems, Network Interface Cards (NICs),
Introduction to Internetworking.
Unit II: Physical and Data Link Layer 6
Physical Layer: Transmission Media (Coaxial Cable, Twisted Pair, Fiber Optic), Signal
Transmission (Analog vs. Digital), Network Topologies, Data Link Layer: Data Encapsulation
(Framing), Error Detection and Correction Techniques (Checksum, CRC), Flow Control
Protocols (Stop-and-Wait, Go-Back-N, Selective Repeat), Media Access Control (MAC) Protocols:
Ethernet, CSMA/CD.
Unit III: Network Layer 6
IP Addressing: Introduction to IP addresses, including the structure and classes of IPv4
addresses, IPv6 addressing, including the format and advantages over IPv4. Subnetting:
Concepts of subnetting, subnet masks, and how to create subnets, Calculating subnets, subnet
masks, and the number of hosts per subnet. Routing Principles: Static Routing: Configuration
and use cases for static routing, Dynamic Routing: Introduction to dynamic routing principles
and advantages. Routing Protocols: Routing Information Protocol (RIP): Basics, configuration,
and operation, Open Shortest Path First (OSPF): Basics, configuration, and operation.
Internetworking: Network Address Translation (NAT): Concepts, configuration, and use cases.
Unit IV: Transport Layer 6
Process-to-Process Communication: Overview of transport layer functions and responsibilities,
Difference between process-to-process communication and host-to-host communication. UDP
(User Datagram Protocol): Introduction to UDP, characteristics, and use cases, Detailed
explanation of UDP header and connectionless communication.
TCP (Transmission Control Protocol): Introduction to TCP, characteristics, and use cases,
Detailed explanation of TCP header, connection-oriented communication, and key features
(e.g., flow control, error control, and congestion control).

Unit V: Application Layer and Emerging Trends 6


Application Layer Protocols: HTTP (Hypertext Transfer Protocol), DNS (Domain Name System),
FTP (File Transfer Protocol), SMTP (Simple Mail Transfer Protocol).
Network Security Fundamentals: Threats (Interception, Interruption, Modification),
Vulnerabilities, Cryptography (Symmetric & Asymmetric), Firewalls, Intrusion Detection
Systems (IDS).
Secure Protocols: HTTPS, SSH (Secure Shell), VPN (Virtual Private Network).

"Computer Networking: A Top-Down Approach" by James F. Kurose and Keith W.


1.
Ross
"Computer Networks" by Andrew S. Tanenbaum and David J. Wetherall
Text 2.
Books
“Data Communication and Networking” by Behrouz A. Forouzan, Fourth
3. Edition, McGraw Hill

Computer Networks: A Systems Approach:


https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=534935&qu
1.
ery=computer%20networks

E-Books Networking Self-Teaching Guide : OSI, TCP/IP, LANs, MANs, WANs,


Implementation, Management, and Maintenance:
2. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=433738&qu
ery=OSI%20model
1. "TCP/IP Illustrated, Volume 1: The Protocols" by W. Richard Stevens

2. "Network Security Essentials: Applications and Standards" by William Stallings


Reference
Books "Computer Networking Problems and Solutions: An Innovative Approach to
3. Building Resilient, Modern Networks" by Russ White and Ethan Banks

“Computer Networks and Internet Protocol”:


Online
https://archive.nptel.ac.in/courses/106/105/106105183/
NPTEL 1.
Material

23UITP2303: Computer Networks

Teaching Scheme: Credit Examination Scheme

Practical: 02 Hrs./Week 1 INT: 25 Marks

Sr. No Relevance to
List of Laboratory Assignments
CO
1. Study of basic Linux network command and network configuration
CO1
commands
2. Basic Network Configuration
I. Set up a basic LAN environment
CO1
II. Configure IP addresses and subnet masks
III. Configure DHCP and DNS services
3. Network Traffic Analysis
I. Use Wireshark to capture and analysis of packets
II. Use Wireshark to analyze Ethernet frames and IP packets CO1
III. Use Wireshark to identify common network protocols and traffic
patterns
4. Router Configuration and Routing Protocols
 Configuring routers and routing tables
CO2
 Implementing static and dynamic routing protocols (e.g., RIP, OSPF)
 Verifying and troubleshooting routing configurations
5. Switch Configuration and VLANs
 Configuring VLANs and trunking
CO2
 Implementing VLAN-based network segmentation
 Configuring Spanning Tree Protocol (STP) for loop prevention
6. Network Security
 Configuring access control lists (ACLs) on routers and switches
CO3
 Implementing port security measures
 Introduction to VPN configuration and encryption techniques
7. Network Simulation and Emulation
 Using simulation tools such as Cisco Packet Tracer or GNS3
CO4
 Designing and simulating network topologies
 Troubleshooting network issues in a simulated environment
8. Network Services and Applications
IntExplore various network services such as DNS (Domain Name System),
DHCP (Dynamic Host Configuration Protocol), FTP (File Transfer Protocol),
and HTTP (Hypertext Transfer Protocol).
 Set up a DNS server and configure DNS zones, records, and name CO4
resolution.
 Configure a DHCP server to dynamically assign IP addresses, subnet
masks, and other network parameters to clients.

9. Network Security Implementation


Introduction to Network Security: Review basic concepts of network
security, including confidentiality, integrity, and availability (CIA).
 Access Control Lists (ACLs): Configure ACLs on routers and switches
to control traffic flow and restrict access to network resources.
 Firewall Configuration: Set up a firewall using software such as CO4
iptables or Windows Firewall to filter incoming and outgoing traffic
based on predefined rules.
 Intrusion Detection Systems (IDS): Install and configure an IDS tool
such as Snort to monitor network traffic for suspicious activity and
generate alerts.
Content Beyond Syllabus
1. Implement a file transfer application using TCP sockets.
2. Develop a simple chat application using socket.
3. Extend the TCP server to handle multiple clients simultaneously.
23UITL2304: Object Oriented Programming

Teaching Scheme: Credit: Examination Scheme:

Lectures: 03 Hrs./Week 3 TAE: 20 Marks, CAE: 20 Marks, ESE :60 Marks


Prerequisite (If any): : Programming for Problem Solving
Course Objectives:

1. This course introduces student’s general idea and concepts of object oriented programming.
2. It is also aimed at developing skills to implement these concepts.
3. The course provide carrier opportunities in design of some applications as object oriented
concepts plays dominant role in software development.
Course Outcomes: After completing this course, student will able to
CO1: Describe object oriented paradigm with concepts of classes, objects, functions, arrays, strings.
CO2: Appraise dynamic memory management techniques using pointers.
CO3:Classify inheritance, and apply concept of polymorphism, function overloading, operator
overloading, and virtual functions.
 CO4: Implement file management, template and exception handing techniques.

Course Contents Hrs.


Unit I: Introduction to Object Oriented Programming and C++ 6
Why Do We Need Object-Oriented Programming: Procedural Languages, The Object-
Oriented Approach, Characteristics of Object-Oriented Languages: Objects, Classes,
Abstraction, Encapsulation, Inheritance, Polymorphism, Dynamic Binding, Reusability,
Creating New Data Types, Polymorphism and Overloading, differences between procedural
Languages C and object-oriented Languages C++. C++ Programming Basics: Basic Program
Construction, Functions, Program Statements, Input cin Output cout, String Constants,
Directives, Comments, Datatypes, Type Conversion, types of Operators and its precedence,
Library Functions, Loops and Decisions, Control Statements, Structures, Structures and
Classes, Enumerations, Functions: Passing Arguments to Functions, Returning Values from
Functions, Reference Arguments.
Unit II: Objects and Classes: 6
C++ Objects as Physical Objects, C++ Objects as Data Types, Constructors and destructors,
Objects as Function Arguments, The Default Copy Constructor, Returning Objects from
Functions, A Card-Game Example, Structures and Classes, Classes: C++ class declaration,
Objects, attributes, method, Memory, Static Class Data, constants and Classes. Local Class
and Global Class, State identity and behaviour of an object, Local Object and Global Object,
Scope resolution operator, Data abstraction, ADT and information hiding Arrays: Array
Fundamentals, Arrays as Class Member Data, Arrays of Objects, Strings: Standard C++ string
Class, Operator Overloading: Overloading of Unary Operators and Binary Operators, Data
Conversion.
Unit III: Pointers and Inheritance 6
Pointers: Addresses and Pointers, Address-of Operator &, Pointers and Arrays, Pointers
and Functions, Pointers and C-Type Strings, Memory Management: new and delete,
Pointers to Objects, A Linked List Example, Pointers to Pointers, A Parsing Example,
Simulation: Designing A Horse Race, Debugging Pointers. Inheritance: Derived Class and
Base Class, Derived Class Constructors, Access specifiers– public, private & protected
Overriding Member Functions, Scope Resolution with Overridden Functions, Abstract
Classes, Class Hierarchies, Public and Private Inheritance, Levels of Inheritance, Multiple
Inheritance, Ambiguity in Multiple Inheritance, Aggregation: Classes Within Classes.
Constructors and Destructors in derived classes.
Unit IV: Polymorphism 6
Polymorphism, Type of Polymorphism – Compile time and runtime, Function Overloading &
Ambiguity, Operator Overloading (Unary and Binary), Virtual Functions, Virtual base
classes, Friend Functions, Static Functions, Assignment and Copy Initialization, this Pointer,
Dynamic Type Information, applying operator overloading, Pitfalls of Operator Overloading
and Conversion.
UNIT V: Streams, Files, Templates and Exceptions 6

Manipulating strings, Stream Classes, Stream Errors, Disk File I/O with Streams, File
Pointers, Function Templates, Class Templates, Introduction to Standard Template Library,
Exceptions Handling: fundamentals simple exception handling- Divide by Zero, Multiple
catching, re-throwing an exception, exception specifications, user defined exceptions,
options the uncaught exception( ). Recent trends in Object Oriented Programming in C++,
Advanced topics & its applications.

1. “Object Oriented Programming in C++” -Robert Lafore, edition, Galgotia


publications
Text 2. “C++ How to Program”, Deitel, 4th Edition, Pearson Education, ISBN:81-297-
Books 0276-2
3. “The Complete Reference C++”, Herbert Schildt, 4th Edition, TMH
Programming with C++:
E-Books 1. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=437715&q
uery=object%20oriented%20programming
C++ Programming Fundamentals:
2.
https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=30302590
&query=c%2B%2B
C++ All-In-One for Dummies:
3. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=1753609&
query=c%2B%2B

1. “Let’s C++” by Y. Kanetkar, BPB publications


Reference 2. “Object oriented programming with C++”, E Balagurusamy, 4th edition,
Books
3. “The Object-Oriented Thought Process”, TMH Matt Weisfeld, Third Edition
Pearson ISBN-13:075-2063330166
Online
NPTEL 1. https://nptel.ac.in/courses/106105153
Material
23UITP2304: Object Oriented Programming
Teaching Scheme: Credit: Examination Scheme:

Practical: 02Hrs./Week 1 INT:25

Sr. Relevance
List of Laboratory Assignments
No. to CO
1 Write a program to demonstrate the use of CO1
i) cin and cout statement
ii) structure
2. Write a program to demonstrate working of CO1
i)class and object
ii)constructor and destructor
iii)friend function
3. Develop an application for Scientific calculator or Income Tax Calculator. CO1
4. Write a program to illustrate how to initialize a dynamic variable with CO2
allocation.
5. Write a program to demonstrate working of malloc(), calloc(), free() and CO2
realloc().
6. Write a program to demonstrate various types of inheritance CO3

7. Write a program using polymorphism and virtual function CO3

8. Write a program to demonstrate different types of template CO4

9. Write a program to demonstrate exception handling CO4

10. Write a program to demonstrate different operations on file: CO4


a. Create
b. Open
c. Read
d. Write
e. Update
f. delete
Content Beyond Syllabus
1 Write a C++ program to demonstrate working of stream tokenization.
2 List out various software implemented using C++.
23UITL2305: Data Structure and Algorithms

Teaching Scheme: Credit: Examination Scheme:

Lectures: 03 Hrs./Week 3 TAE: 20 Marks, CAE: 20 Marks, ESE :60 Marks


Prerequisite (If any): Programming for Problem Solving
Course Objectives:
1. To empathize the necessity and importance of Data structures in real-world applications and
provide mathematical approaches for analysis of algorithms
2. To understand various data structures and select the appropriate one to solve complex
problems from different domains.
3. To work on the various structured data
4. To build the logic to use appropriate data structure in logical and computational solutions
Course Outcomes: After completing this course, students will be able to
CO1: Describe basics of data structures and analyze complexity of various algorithms.
CO2: Create Linked list, Stack, Queue and use hashing & Collision resolution Techniques to solve
complex problems from different domains.
CO3: Analyze the operations of a nonlinear-based abstract data type on the various structured data
CO4: Apply graphs, multiway trees search techniques to store and maintain data.

Course Contents Hrs.

Unit I: Introduction to Data Structure and Algorithm 6


Problem Solving -From Problem to Program (Problem, Solution, Algorithm, Data Structure
and Program), Concept of ADT, Types of Data Structures (Linear and Nonlinear, Static and
Dynamic, Persistent and Ephemeral data structures), Operations on Data Structures.
Arrays: Arrays as ADT, Representation of Linear array in Memory, Traversing Linear Arrays,
Inserting and deleting. Algorithms: Introduction to algorithm, Characteristics of algorithm,
Pseudo-code and flowchart, Space complexity, Time complexity, order of Growth, Asymptotic
notation- Big-O, Theta and Omega, finding complexity using step count method.

Unit II: Linked List, Sorting and Searching Techniques: 6


Sorting Techniques - bubble sort, selection sort, insertion sort and their Analysis. Linked
List: Introduction, Representation of Linked List, Memory Allocation, Linked List v/s
Array, Types of Linked List - Singly Linked List, Circularly Linked Lists, Two-Way Lists (or
Doubly Linked Lists), Operations on Singly Linked List and Doubly Linked List: - Insertion,
Deletion, Traversing. Advantages, Disadvantages, Applications of Arrays and Linked List.
Singly Linked List Application-Polynomial Representation and Addition. Searching
Techniques: Linear Search, Binary Search, Hashing, Hash Functions, properties of good
hash function, types of Hash Functions, Collision resolution Techniques.
Unit III: Stack, Queue and Recursion 6
Stacks: Introduction, Stack as ADT, Array Representation of Stacks, Operations on Stack,
Linked Representation of Stacks, Arithmetic Expression; Polish Notation, Conversion and
Postfix Evaluation. Stack using Singly Linked List, Applications of Stack: Well form-ness of
Parenthesis. Recursion: Towers of Hanoi, Implementation of Recursive Procedures by
Stacks. Queue: concept, Linked Representation of Queues, Queues as ADT, Operations on
Queue, Circular Queues, Deques, Priority Queues using heaps. Queue using Singly Linked
List. Advantages, Disadvantages, Applications of Queue.

Unit IV: Trees and Search Trees 6


Trees - Basic terminology, General tree, Representation, Binary tree- properties,
converting tree to binary tree, Operations on Binary tree, Binary tree Traversal: Preorder,
Inorder, Postorder, Traversal Algorithms Using Stacks, Huffman Encoding. Search Trees:
Binary Search Trees (BST), BST Operations, Threaded BST(TBST)- thread concept &
operations on TBS, Height Balanced Tree- AVL Trees & operations on AVL tree, m-way
Search Trees, B-Tree, B+ Tree.

Unit V: Graphs and their Applications 6


Introduction, Graph Theory Terminology, Sequential Representation of Graphs, Adjacency
Matrix; Path Matrix, Linked Representation of a Graph, Operations on Graphs, Traversing
a Graph- Depth First Search (DFS) and Breadth First Search (BFS), Graph Application-
Topological Sorting. Posets; Spanning Trees, Minimum spanning Tree, Algorithms for
computing minimum spanning tree- Prims and Kruskal Algorithms.

1. “Data Structures, Algorithms, and Applications in C++”, Sartaj Sahni,


Universities Press

2. “Data Structures: A Pseudocode approach with C++”, R. Gilberg, B. Forouzan,


Text
5th Edition, Thomson Press (India) Ltd
Books
3. “Data Structures Using C, C++”, Tenenbaum, Aaron M., Augenstein, Moshe J.,
Langsam, Yedidyah, PHI Learning
4. “Data Structures with C”, Seymour Lipschutz, Tata McGraw-Hill
Data Structure and Algorithm with C:
1. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=564015
7&query=data%20structure
E-Books
Data Structure Simplified: Implementation Using C++:
2. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=564015
8&query=data%20structure

1. "Introduction to Algorithms", Thomas H. Cormen, Charles E. Leiserson, Ronald


L. Rivest, and Clifford Stein., 4th edition, PHI, MIT press.
Reference 2. “Data Structures & Algorithms”, 1e, Alfred V. Aho, Jeffery D. Ullman, Person.
Books “Data Structures and Algorithms in Java” MT Goodrich, R Tamassia, DM
3.
Mount, , 5th Ed., Wiley, 2010. (Equivalent book in C also exists.)
4. “Algorithms and Data Structures”, Wirth, N., Prentice-Hall of India.
1. https://nptel.ac.in/courses/106/102/106102064/
Online 2. https://www.cise.ufl.edu/~sahni/dsaac/view.htm
NPTEL
Material 3. http://cse01-iiit.vlabs.ac.in/
4. https://ds2-iiith.vlabs.ac.in/data-structures-2/
23UITP2305: Data Structure and Algorithms

Teaching Scheme: Credit Examination Scheme

Practical: 02 Hrs./Week 1 Ext: 25 Marks


Sr. No. Relevance
List of Laboratory Assignments
to CO
1. Write a program to demonstrate various sorting techniques using arrays. CO1
2. Write a program to perform hashing techniques and collision resolution
CO1
techniques.
3. Write a program to perform the Stack operations for following:
To convert an Infix expression to Postfix expression.
OR CO2
To check the well form-ness of parenthesis, whether a given expression is
balanced or unbalanced.
4. Write a program to demonstrate singly and double linked list to maintain
club member‘s information to:
a) Add and delete the members, president, and secretary.
b) Compute total number of members of club. CO2
c) Display members.
d) Display list in reverse order using recursion.
e) Two linked lists exist for two divisions, concatenate two lists.
5. Write a program to simulate the Queues for jobs of an operating system
a) Create a queue for jobs.
b) Add and delete job from queue.
OR CO2
Write a program to simulate double-ended queue (deque) with functions to
a) Create a deque for elements.
b) Add and delete elements from deque.
6. Write a program to demonstrate tree for following:
Construct the Binary tree using linked list and perform the inorder, CO3
preorder, post order traversals (recursive and non-recursive).
OR
A book consists of chapters, the chapters consist of sections and sections
consist of subsections. Construct a tree and print the nodes and find the
time and space requirements of the method.
7. Write a program to construct Binary search tree and perform various
CO3
operations.
8. Write a program to perform the Graph Traversal techniques
i) Depth First Search CO4
ii) Breadth First Search
9. Write a program to demonstrate the minimum spanning tree using
i) Prim’s algorithm CO4
ii) Kruskal’s algorithm.
Content Beyond Syllabus
1. Write a program to insert and search operation in Trie (prefix tree) data structure.
2. Write a program to insert, delete and search operation in skip list data structure.
23UITP2306: Python Programming
Teaching Scheme: Credit: Examination Scheme:

Practical: 04Hrs./Week 2 INT:25 EXT:25


Prerequisite (If any): Programming for Problem Solving, Foundation of Data Analytics
Course Objectives:
1. To learn the basic concepts of Python keywords, identifiers, and data types.
2. To be aware about the concepts of control structure, functions.
3. To recognize data structure like list, set, tuple and dictionary.
4. Acquire the concepts of string and file handling.
Course Outcomes: After completing the course, students will be able to
CO1: Learn the basic concepts keywords, identifiers, data types to implement simple Python
program
CO2: Apply control structure, functions to demonstrate Python program
CO3: Perform the different operations on data structure like list, set, tuple and dictionary
CO4: Demonstrate Python program for string and file handling

Python Programming Practical list is Based on following contents:


Basic of Python Programming :
 Key features, applications , environment setup
 Different modes, identifiers, reserved words, lines and indentation, comments , quotation
,keywords and identifiers
 Variables: variable naming rules, creating variables, global and local variables
 Data Types: int, float, complex, built-in data types
 Operators: Arithmetic operators, comparison (relational) operators, assignment
operators, logical operators, identity operators, bitwise operators
Control Structure and Functions
 Conditional Statements: if, if-else, nested if, if-elseif-else statements,
 Loops: while loop, for loop.
 Branching Statements : break Statement , continue Statement , return Statement
 Functions: Syntax and basics of a function, use of a function, parameters and arguments in
a function, local and global scope of a variable, the return statement, recursive functions,
the lambda function. Built-in functions.

Python Data Structures


 List: Basic concept, creating and accessing elements, list operations, list comprehension,
list slices, list methods, list loop, mutability, aliasing, cloning lists, list parameters.
 Set: Basics of sets, create a set, add and remove set, common set operations, working with
sets.
 Tuple: Basic concepts, creating and Accessing a tuple, tuples operations, lists vs. tuples,
iterating through a tuple, slicing with negative index numbers, tuple assignment, tuple as
return value.
 Dictionary: Basic concept, creating dictionary, accessing dictionary items, updating
dictionary, deleting elements from dictionary, operations in dictionary, built-in dictionary
functions.
Python for String and File Handling
 Strings: A string is a sequence, len, string slices, searching, looping, counting, string
methods
 File Handling: File open, read, right, update, delete

Sr. Relevance
List of Laboratory Assignments
No to CO
1 Write a program by using basic concepts like input, output, variable, CO1
keywords, and identifiers.
2 Write a program to demonstrate the of arithmetic operators. CO1
3 Write a program to demonstrate working of control structures. CO2
4 Write a program to demonstrate working of different types of functions. CO2
5 Write a program to demonstrate working of recursion. CO2
6 Write a program to perform different operations on list:
i. Append
ii. Extend
iii. Insert CO3
iv. Remove
v. Pop
vi. Slice
7 Write a program to perform different operations on set:
i. Update CO3
ii. Remove the element
iii. Clear
iv. Pop
8 Write a program to perform different operations on tuple:
i. Accessing
ii. Concatenation CO3
iii. Slicing
iv. Deleting
9 Write a program to demonstrate the working of dictionary
CO3

10 Write a program demonstrates various operations on strings :


i. Slicing
ii. Concatenating
iii. Finding the length of the string CO4
iv. Converting the string to uppercase and lowercase
v. Replacing a substring with another substring
vi. Splitting the string into a list of substrings
11 Write a program to demonstrate different operations on file:
i. Create
ii. Open
iii. Read CO4
iv. Write
v. Update
vi. Delete
Content Beyond Syllabus
1. Write a Python program to create DataFrame using Numpy and Pandas library
2. Write a Python program to import existing dataset and perform different operations on
it using Numpy and Pandas library

3. Write a Python program to plot the different types of graph using Matplotlib and
Seaborn library

4. Mini Project on Machine Learning using Python

1. “Think Python, 2e: How to Think Like a Computer Scientist”, A. B. Downey,


Text
O′Reilly, 2015.
Books
2. “Programming with Python”, T R Padmanabhan, Springer Nature Singapore
3. James Payne, “Beginning Python: Using Python and Python 3.1, Wrox
Publication
Python Introduction to Programming:
1. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=489508
3&query=python%20programming
Beginning Programming with Python for Dummies:
E-Books 2. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=177547
1&query=python%20programming
Python in Easy Steps, 2nd Edition: Makes Programming Fun:
3. https://ebookcentral.proquest.com/lib/ghrcem/detail.action?docID=707548
4&query=python%20programming
1. Eric Matthes, “Python Crash Course”, No Starch Press, 2nd Edition,
Referenc
e Books 2 Hands- On Data Preprocessing in Python, Roy Jafari, Packet Publisher
On-line
NPTEL 1. https://onlinecourses.swayam2.ac.in/cec22_cs20/preview
Material
23UITHUL2308: Environmental Science

Teaching Scheme: Credit: Examination Scheme:

Lectures: 02 Hrs./Week AU --
Prerequisite (If any):
Course Objectives:
1. Understand the importance of ecological balance for sustainable development..
2. Recognize the relevance of the natural resources for sustainable life style.
3. Understand and realize the multi-disciplinary nature of the environment, its components, and
inter-relationship between man and environment.
4. Use relevant pollution control methods to solve domestic and industrial problems.
Course Outcomes: After completing this course, students will be able to
CO1: Comprehend the importance of ecosystem and biodiversity.
CO2: Correlate the environmental degradation and awareness about environmental protection and
prevention.
CO3: Identify different types of environmental pollution and control measures.
CO4: Correlate the exploitation and utilization of conventional and non-conventional resources.

Course Contents Hrs.

Unit I: Ecosystems 6
Concept, Structure, Function, Energy flow, Ecological succession, Forest, grassland, desert
and aquatic ecosystems - Introduction, characteristic features, structure and function.

Unit II: Natural Resources 6


Introduction, Renewable and non-renewable, Forest, water, mineral, food, energy and
land resources, Individual and conservation of resources, Equitable use of resources

Unit III: Biodiversity 6


Genetic, Species and ecological diversity, Biogeographical classification of India, Value and
hot spots, Biodiversity at global, national and local levels.

Unit IV: Pollution 6


Definition, Causes, effects and control measures of the pollution – Air, soil, Noise, Water,
Marine and Thermal and Nuclear Pollution, Solid waste management, Role of Individual in
Prevention of Pollution, Pollution case studies, Disaster management

Bharucha, E., ―Textbook of Environmental Studies, Universities Press


1.
Text (2005), ISBN10:8173715408
Books Mahua Basu, ―Environmental Studies, Cambridge University Press,
2.
ISBN-978-1-1075317-3
S. C. Sharma & M.P. Poonia, Environmental Studies, Khanna Publishing
3.
House, New Delhi.
O. P. Gupta, Elements of Environmental Pollution Control, Khanna
4.
Publishing House, New Delhi
www.eco-prayer.org
1.
www.teriin.org
2.
Open source
software www.indiaenvironmentportal.org.in
3.
and website
address www.sustainabledevelopment.un.org
4.
www.conserve-energy-future.com
5.

You might also like