B.Sc. Computer Science UG Syllabus SEP
B.Sc. Computer Science UG Syllabus SEP
B.Sc. Computer Science UG Syllabus SEP
2024-25
1 Dr. Muralidhara B L Chairperson
Professor,
Department of Computer Science
Bangalore University
Se
Teach Inter
mes Tot
ing nal
Course/ Paper ter al Cre
Sem Title of the Paper Hour Asse
Code End Ma dits
s/ ssme
Exa rks
week nt
m
1 24BSC-CS-1 Problem Solving Technique 3 80 20 100 3
24BSC-CS-1P Problem Solving Technique Lab 4 40 10 50 2
2 24BSC-CS-2 Data Structure 3 80 20 100 3
24BSC-CS-2P Data Structure Lab 4 40 10 50 2
3 24BSC-CS-3 Database Management System 3 80 20 100 3
24BSC-CS-3P Database Management System Lab 4 40 10 50 2
Object Oriented Programming
4 24BSC-CS-4 3 80 20 100 3
using Java
Object Oriented Programming
24BSC-CS-4P 4 40 10 50 2
using Java Lab
24BSC-CS-5 Computer Networks 4 80 20 100 4
5
24BSC-CS-6 Operating Systems 4 80 20 100 4
24BSC-CS-7 Artificial Intelligence 4 80 20 100 4
6
24BSC-CS-8 Project Work 8 80 20 100 4
Department of Computer Science and Applications
BENGALURU CITY UNIVERSITY, BANGALORE
Program Outcome
Course Outcomes
Upon successful completion of the course, the student will be able:
CO1 To understand algorithmic strategies for enhancing problem-solving proficiency
CO2 Demonstrate problem solving tools and techniques using C.
CO3 To analyze the given problems and use appropriate algorithms.
CO4 To implement sorting and searching techniques to develop programs.
UNIT –1 12 Hours
Introduction: The Role of Algorithms in computing, Algorithms as a technology, analyzing
algorithms, Designing algorithms, Growth of Functions, Asymptotic notation, Standard
notations and common functions.
Fundamental Algorithms: Exchanging the values of two variables, Counting, Summation of a set
of numbers, Factorial Computation, Generating of Fibonacci sequence, Reversing the digits of
an integer, Character to number conversion.
UNIT-II 11 Hours
C Programming: Getting Started, Variables, Operators and Arithmetic expressions. Input and
Output: Standard input and output, formatted input and output. Selection statements: Statements
and Blocks, If, If-else, if-else-if ladder, nested if, switch. Control Structure: while loop, for loop,
do-while loop, break and continue, goto and labels. Pointers and Arrays: Pointers and address,
Pointers and function arguments, One Dimensional array, Two-Dimensional array,
Multidimensional array, Command line arguments.
UNIT - III 11 Hours
Factoring Methods: Finding the square root of a number, the smallest Divisor of an integer, the
greatest common divisor of two integers, computing the prime factor of an integer, raising a
number to a large power. Array Techniques: Array order reversal, Array counting, Finding the
maximum number in a set, removal of duplicates from an ordered array, partitioning an array,
finding the kth smallest element, multiplication of two matrices.
UNIT - IV 11 Hours
Sorting: Sorting by selection, sorting by exchange, sorting by insertion, sorting by diminishing
increment, sorting by partitioning. Searching: Linear Search, Binary search, Hash search. Text
processing and Pattern searching: Text line length adjustment, keyboard searching in text, text
line editing, linear pattern searching.
Text Book
1 R. G. Dromey, “How to Solve it by Computer”, Person Education India, 2008.
2 Brain M. Kernighan and Dennis M. Ritchie, “ The C Programming Language”, 2nd edition,
Princeton Hall Software Series, 2012.
3 Thomas H Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, “Introduction to
Algorithms”, 3rd Edition, The MIT Press Cambridge, Massachusetts London, England, 2008.
Reference Books
14. To find the length of the string without using built-in function.
15. To demonstrate string functions. (String Length, String Copy, String Concatenate, String
Comparison)
16. To read, display and add two n x m matrices using function.
17. To read a string and to find the number of alphabets, digits, vowels,
consonants, space and special characters.
18. To swap two numbers using pointers.
19. To demonstrate student structure to read & display records of n students.
20. To demonstrate the difference between structure and union for the following
Student name (String), Student roll no(integer), Student mark(float)
DATA STRUCTURE
Course Outcome
CO1 Understand basic concepts of data structures.
CO2 Analyzing and exploring various ways of storing data using Array and Linked list.
CO3 Demonstrate stack and queue data structures and their applications
CO4 Analyze and implement various non linear data structures.
UNIT I 11 Hours
Introduction and Overview: Definition, Elementary data organization, Data Structures, data
Structures operations, Abstract data types, algorithms complexity, time-space trade off.
Preliminaries: Mathematical notations and functions, Algorithmic notations, control structures,
Complexity of algorithms, asymptotic notations for complexity of algorithms. Introduction to
Strings, Storing String, Character Data Types, String Operations, word processing, Introduction to
pattern matching algorithms.
UNIT II 11 Hours
Arrays: Definition, Linear arrays, arrays as ADT, Representation of Linear Arrays in Memory,
Traversing Linear arrays, Inserting and deleting, multi-dimensional arrays, Matrices and Sparse
matrices, searching and sorting techniques using array.
Linked list: Definition, Representation of Singly Linked List in memory, Traversing a Singly
linked list, Searching in a Singly linked list, Memory allocation, Garbage collection, Insertion into
a singly linked list, Deletion from a singly linked list; Doubly linked list, Header linked list,
Circular linked list.
UNIT IV 12 Hours
Binary Trees: Definitions, Tree Search, Traversal of Binary Tree, Tree Sort, Building a Binary
Search Tree, Height Balance: AVL Trees, Contiguous Representation of Binary Trees: Heaps, Red
Black Tree: Insertion and Deletion, External Searching: B-Trees, Applications of Trees. Graphs:
Mathematical Back ground, Computer Representation, Graph Traversal. Hashing: Hash Table
ADT, understanding Hashing, Components of Hashing, Hash Table, Hash Function, Hashing
Techniques, collisions, collision resolution techniques.
Text Book
1 Seymour Lipschutz, “Data Structures with C”, Schaum’s outLines, Tata Mc Graw Hill, 2011.
2 Robert Kruse, C.L.Tondo, Bruce Leung,Shashi Mogalla,“Data Structures and Program Design
using C”, Pearson Education, 2009
Reference Books
1 Mark Allen Weiss,“ Data Structures and Algorithm Analysis in C”, Second Edition, Pearson
Education,2013
2 Forouzan,“A Structured Programming Approach using C”,2nd Edition, Cengage
LearningIndia,2008.
Course Articulation Matrix: Mapping of Course Outcomes (COs) with Program Outcomes (POs12)
NOTE: For all the programs write the output, flowchart and number of basic operations performed.
1. Write a program to search for an element in an array using binary and linear search.
3. Perform the Insertion and Selection Sort on the input {75,8,1,16,48,3,7,0} and display the
output in descending order.
4. Write a program to insert the elements {61,16,8,27} into singly linked list and delete 8,61,27
from the list. Display your list after each insertion and deletion.
5. Write a program to insert the elements {45, 34, 10, 63,3} into linear queue and delete three
elements from the list. Display your list after each insertion and deletion.
7. Write a program to insert the elements {61,16,8,27} into ordered singly linked list and delete
8,61,27 from the list. Display your list after each insertion and deletion.
11. Write a program to convert an infix expression x^y/(5*z)+2 to its postfix expression
13. Write a program to create a binary tree with the elements {18,15,40,50,30,17,41} after
creation insert 45 and 19 into tree and delete 15,17 and 41 from tree. Display the tree on each
insertion and deletion operation.
14. Write a program to create binary search tree with the elements {2,5,1,3,9,0,6} and perform
inorder, preorder and post order traversal.
15. Write a program to Sort the following elements using heap sort {9.16,32,8,4,1,5,8,0}.
16. Given S1={“Flowers”} ; S2={“are beautiful”} I. Find the length of S1 II. Concatenate S1 and
S2 III. Extract the substring “low” from S1 IV. Find “are” in S2 and replace it with “is” .
18. Write a program to insert/retrieve an entry into hash/ from a hash table with open addressing
using linear probing.