Download presentation
1
HORSEED International University
Data structure Using C# For Computer Science Department, Horseed International University Presented By: Eng. Mohamed Adam Isak (Eng. Afgoye) Lecturer in Mogadishu university, University of Somalia and Horseed Int. University M.Sc. And B.Sc. of Information Technology Engineering Tell:
2
Lecture 1- introduction hour
3
Outline Who is your Lecturer ? Course objectives Resources
Course guidelines Assessment Course outlines What is Data Structures ? Static memory allocation Dynamic memory allocation Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
4
Who is Your Lecturer !! ENG. MOHAMED ADAM ISAK (ENG. AFGOYE)
Certificates: : M.Sc. in Information Technology Engineering, Title of the thesis: “Mechanisms Implemented to Secure Cloud Computing”, The Libyan Academy, Tripoli-Libya June August 2012, Certificate: Accomplishment Diploma of Internet History, Technology, and Security. University of Michigan- Washington. USA : B.Sc. in Computer Science. Computer Science and Information Technology Department, Islamic Call College. Tripoli - Libya. Currently Job: Lecturer in Computer Science department in Mogadishu University and University of Somalia. Past Job: Head of Information Technology department of University of Libya Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
5
Course objectives To make the student capable of understanding & writing: The fundamental data structures in computer science Data Structure Algorithms using C# or any other Dot Net Language To improve ability to solve problems abstractly Data structures are the building blocks To improve ability to analyze your algorithms prove correctness Estimate and improve time complexity To be familiar with C# programming language in advanced mode not as essential. Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
6
Resources Power point files prepared by the lecturer. Books:
“Theory and Problems of Data Structures” by Seymour Lipschutz, McGraw-Hill. “C# How to Program”,, By H. M. Deitel - Deitel & Associates, Inc., 6th Edition, P. J. Deitel - Deitel & Associates, Inc. “C++ Plus Data Structures” , 3rd edition, by Nell Dale, university of Taxes in U.S. “Data Structures & Algorithm Analysis in C++”, 2nd edition, by Mark Allen Weiss “Data Structure using C++”, by D.S. Malik, 2nd edition Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
7
Course guidelines We have a common goal: It is my job to teach you what you need to know. Therefore… Ask me questions. Do NOT let me continue if you aren’t clear about something and remember that: question is the half of knowledge. If I go too fast, ask me to slow down. If I use a term that you aren’t familiar with, ask me for a definition. Attendance: is encouraged and required. Study lecture by lecture: Plagiarism is strictly punished: Don’t associate people’s work to yourself. Site everything you include in your reports that is not your original work. Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
8
Assessment 20 Home works & Quizzes Project Mid term
100 Semester work 60 20 Mid term Home works & Quizzes Project Final Exam 40 Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
9
Sending Home works & Questions
All home work must be send to my You must set the title of your mail as Data Structure – HORSEED University - Homework – your name – HW# You must respect the dead Line of sending home work. Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
10
Study Hours Study Hours are a greatly time to have a good Science.
They are yours. Every Tuesday (8:00 To 10:00 AM) Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
11
Covered topics Fundamentals of Data Structure Fundamentals of C#
Array data structure Sorting Arrays Swapping Searching Arrays Insert elements Recursion Linked Lists Stacks Queues Trees Collection Classes Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
12
Need for Knowledge of Data Structures
Good programming and problem solving requires knowledge of data structures. Without a sufficient understanding of data structures, the level at which a programmer can work will be severely limited. An important distinguishing characteristics of data structures is the manner in which they are organized. Data structures are categorized as linear or dynamic depending on their allocation strategy. Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
13
Motivation for Data Structures
In a beginning programming courses, variables are introduced that store as single. However, some times we need to store multiple related data items for convenience. For example, data items like students records many need to be stored under a single name for ease of processing. Such convenient structuring of data is called data organization a container for the data is called data structure. Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
14
Motivation for Data Structures (contd.)
A data structure could be a programming construct provided in a language or it can be defined by the programmer. Example of data structure include: Arrays, Linked lists, Stacks, Queues, Trees, Graphs Data structures are applied in sorting, searching, data compressing etc. A course in data structure is a core course in most undergraduate Computer Science degree program. The contents of this course has not changed much in the last two decades except for inclusion of some new algorithms. Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
15
What is Data Structures ?
A Data structure is the collection of basic data types. A data structure is a representation of data and the operations allowed on that data. OR Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
16
Static memory allocation
Static memory allocation means the program must obtain its space before the execution and can not obtain more while or after execution. The limit of the static memory allocation is the maximum limit of the data type. Example: array data structure Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
17
Dynamic memory allocation
The dynamic memory allocation is the ability for a program to obtain more memory space at execution time to hold new nodes and to release space no longer needed. The limit for dynamic memory allocation can be as large as the amount of available physical memory. Creating and maintaining dynamic data structures requires dynamic memory allocation. Dynamic data structures as: Linked Lists Stacks Queues Trees Later !!!!!!! Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
18
Data Structure Operations
Frequently used operations in any data structure is Traversing/Navigating: Accessing each record exactly once so that certain items in the record may be processed. Searching: Finding the location of the record with a given key value, or finding the locations of all records which satisfy one or more conditions. Inserting: Adding a new record to the structure. Deleting: Removing a record from the structure. Sorting: Arranging the records in some logical order. Merging: Combining the records in two different sorted files into a single sorted file. ………………………………………………… Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
19
C# for data structure practical
Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
20
Arrays structure and Algorithms;
Next Lecture if C# is learned Arrays structure and Algorithms; else C# in two hours; Presented & Prepared by: Eng. Mohamed Adam Isak (Eng. Afgoye)
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.