Data Structures and Algorithms Using Java

       Course Online Materials

 

Prof. Debasis Samanta

Department of Computer Science & Engineering

 Indian Institute of Technology Kharagpur

 

 

Course Outline

 

Week#

Lecture

Topic

Lectures

Codes

Handbook

Week 1

1

Introduction

Lecture 1

N/A

Module 1

2

Generic Methods

Lecture 2

Code 1

Module 2

3

Basics of Generic Classes

Lecture 3

Code 2

4

Parameterized Geniric Classes

Lecture 4

Code 3

5

Bounded Argument in Generic Classes

Lecture 5

Code 4

Week 2

6

Basics of JCF

Lecture 6

N/A

Module 3

7

Collections of JCF

Lecture 7

N/A

8

Set of JCF

Lecture 8

N/A

9

Map of JCF

Lecture 9

N/A

10

Java Legacy Classes

Lecture 10

N/A

Week 3

11

Array Data Structure

Lecture 11

N/A

Module 4

12

Programming with Arrays

Lecture 12

Code 5

13

ArrayList for Arrays

Lecture 13

Code 6

14

Arrays for Arrays

Lecture 14

Code 7

15

Vector for Arrays

Lecture 15

Code 8

Week 4

16

Linked List Data Structure (Part-I)

Lecture 16

N/A

Module 5

17

Linked List Data Structure (Part-II)

Lecture 17

N/A

18

Programming for Linked List (Part-I)

Lecture 18

Code 9

19

Programming for Linked List (Part-II)

Lecture 19

Code 10

20

Linked List using JCF

Lecture 20

Code 11

Week 5

21

Stack Data Structures

Lecture 21

N/A

Module 6

22

Programming for Stacks

Lecture 22

Code 12

23

Stack Using JCF

Lecture 23

Code 13

24

Queue Data Structures

Lecture 24

N/A

Module 7

25

Programming for Queues

Lecture 25

Code 14

Week 6

26

Queue Using JCF

Lecture 26

Code 15

27

Understanding Tree Data Structures

Lecture 27

N/A

Module 8

28

Operations on Binary Tree

Lecture 28

N/A

29

Binary Search Tree

Lecture 29

N/A

30

Programming for BST

Lecture 30

Code 16

Week 7

31

Height Balanced Binary Search Tree

Lecture 31

N/A

32

Heap Trees

Lecture 32

N/A

33

Programming for Heap Trees

Lecture 33

Code 17

34

Huffman Tree

Lecture 34

N/A

35

Graph Structures

Lecture 35

N/A

Module 9

Week 8

36

Graph Algorithms

Lecture 36

N/A

37

Map Framework in Java

Lecture 37

N/A

Module 10

38

Applications of Map (Part-I)

Lecture 38

Code 18

39

Applications of Map (Part-II)

Lecture 39

Code 19

40

Set Collection in Java

Lecture 40

Code 20

Module 11

Week 9

41

Operations on Set Collections

Lecture 41

Code 21

42

Java IO Streams

Lecture 42

N/A

Module 12

43

IO with Byte Streams

Lecture 43

Code 22

44

IO with Character Streams

Lecture 44

Code 23

45

File IO

Lecture 45

Code 24

Week 10

46

Random Access File

Lecture 46

Code 25

47

Linear Searching Algorithms

Lecture 47

N/A

Module 13

48

Non-linear Searching Algorithms

Lecture 48

N/A

49

Programming for Searching

Lecture 49

Code 26

50

Simple Sorting Algorithms

Lecture 50

N/A

Module 14

Week 11

51

Improved Sorting Algorithms

Lecture 51

N/A

52

Advanced Sorting Algorithms

Lecture 52

N/A

53

Programs for Sorting (Part-I)

Lecture 53

Code 27

54

Programs for Sorting (Part-I)

Lecture 54

Code 28

55

Sorting Using JCF

Lecture 55

Code 29

Week 12

56

String Class

Lecture 56

Code 30

Module 15

57

Applications of String Class

Lecture 57

Code 31

58

Class StringBuffer

Lecture 58

Code 32

59

Miscellaneous Utilities

Lecture 59

Code 33

60

Java Cursor Iterator

Lecture 60

Code 34