Data Structure and Algorithms
Data structures are organized ways of storing and managing data with operations like insertion, deletion, searching, and traversal. Since no single data structure fits all purposes, understanding their strengths and limitations is essential. Efficient algorithms are crucial for optimizing limited resources like time and memory, especially in modern computing with GUIs, OOP, web technologies, fast networking, and advanced architectures.
Algorithms can be implemented in any programming language, though some offer built-in support. Knowledge of data structures improves coding efficiency by enabling effective data interaction. At @EduPlusOne, learning begins with complexity analysis, then covers operations on arrays, linked lists, strings, stacks, queues, sorting, searching, and advanced structures like binary trees. Practical problems such as prime numbers, string and matrix manipulation, Fibonacci, and palindrome are also included.
Memory and variables – locations, addresses, definitions and declarations; program structure, data types, operators, and expressions, expression evaluation: operator, precedence and associativity, expression evaluation with different data types: type conversion (implicit and explicit), relational, equality, and logical operators
Control Structures
Control statements- sequential, conditional and iterative, if-statement (if-else ladder, nested if, compound if), switch statement (multiway selection), for statement (nested for), while and do-while loops. Sample programs illustrating the use of control statements as basic building blocks.
Data Structure - Arrays
One dimensional and multi-dimensional random access lists: declaring, initializing, and accessing list elements, searching algorithms: linear and binary, sorting algorithms: selection, insertion and bubble sort, implementing stacks and queues using arrays.
Data Structure - Functions and Pointers
Need of functions: modularity and reuse, declaration and definition, scope of data and problem solving, Recursion-self recursive structures, Merge sort, Binary Search using recursion.<br /> Introduction to pointers, argument passing to functions: by value and by reference and pointer arithmetic
Data Structure - Strings
Character arrays as strings, standard library string functions: syntax and implementation, string manipulation with and without header file string.
Data Structure - Heterogeneous Data Types
Memory layout – implicit vs. explicit allocation; static vs. dynamic allocation; new and delete for dynamic allocation/deallocation, user defined types: typedef, # define, structures, pointer to structure, union, enumerated data types, self referential structures
Dynamic Data Structures
Linked Lists: inserting, searching and deleting nodes, implementing stacks and queues using linked lists, merging of linked lists, Doubly linked lists, Binary trees and BST, AVL Trees, Graphs (representation using adjacency list and matrix), BFS and DFS Algorithms with coding, Shortest route algorithm, Hash Tables and Map
Course Duration
10 Weeks
Course Fees for group classes
INR 15000
