DATA STRUCTURE Chapter 0: Intro File Prepared & Presented by Mr. Mahmoud R. Alfarra 2010-2011 College of Science & Technology Dep. Of Computer Science & IT BCs of Information Technology http://mfarra.cst.ps
Outline  Who is Lecturer ?!  Course objectives  Resources  Course guidelines  Assessment  A word about lectures  Sending Home works & Questions  Office Hours  How to be successfully ?!  Course outlines  What is Data Structures ?  Classification of Data structure  Ahl Aljanna 
Who is Lecturer ?!  Mahmoud Rafeek Alfarra  Certificates:  MSc Computer Science,2008, Pattern Recognition, AAST, Alexandria, Egypt.  BSc Computer Science,2004, The Islamic University of Gaza, Palestine.  General Secondary School Certificate,1999, Science division, Khan Younis, Gaza, Palestine.  Currently :  Lecturer in CST (Full Time) since 4-2009 .  Lecturer in UCAS as part time since 9-2008.  Head of ITF2  Past:  Head Of Computer Center in CST (9-2009 To 10-2010)  Head of ITF1  Lecturer in QOU, UP, CST as Part Time  Contacts:  E-mail: m.farra@cst.ps Site: http://mfarra.cst.ps  YouTube channel: mralfarra1 FaceBook Page: mahmoudRfarra  Office: AD010 3 Presented & Prepared by: Mahmoud R. Alfarra
Course objectives  This course aims to make the student capable of understanding and writing:  Algorithms of Sorting, Searching .  Different data structures as:  Array, ArrayList  Linked List  Stack  Queue  Tree  Graph 4 Presented & Prepared by: Mahmoud R. Alfarra
Resources  Power point’s files prepared by me.  Books:  DATA STRUCTURES AND ALGORITHMS USING C#, Michael McMillan, Cambridge University Press, 2007  C# How to Program, Sixth Edition, By H. M. Deitel - Deitel & Associates, Inc., P. J. Deitel - Deitel & Associates, Inc. 5 Presented & Prepared by: Mahmoud R. Alfarra
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. 6 Presented & Prepared by: Mahmoud R. Alfarra
Course guidelines  Prepare yourself: For best understanding…  Study lecture one by one  Respect the lecture:  Any noise made during the lecture (e.g. A mobile phone ringing, a student talking to, or laughing with his or her mate, absent) will be considered impolite.  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. 7 Presented & Prepared by: Mahmoud R. Alfarra
Assessment 8 100 60 Semester work 20 Theoretical Exam 10 Practical Exam 15 Quizzes & Attend.& HW 15 Project 40 Final T. Exam Presented & Prepared by: Mahmoud R. Alfarra
A word about lectures  PPT notes will be available for all lectures on my web site, BUT:  You learn better when you actually have to write things down yourself.  Just reading/Listening along with my notes makes you sleepy.  Everything I say is NOT in the lecture notes, but anything I say MIGHT be on an exam or in a assignments, so you need to take notes on what I say  In this course, you should read/do practice/ ask many times if you hope to have an excellent grade. 9 Presented & Prepared by: Mahmoud R. Alfarra
Notations 10 Presented & Prepared by: Mahmoud R. Alfarra Home Work HW 1.1 Be Care Very Important information
Sending Home works & Questions  All home work must be send by CST’s moodle.  All your asks can be send to my e-mail m.farra@cst.ps.  You must set the title of your mail as  DS – Question – fname lname  You must respect the dead Line of sending home work. 11 Presented & Prepared by: Mahmoud R. Alfarra
Office Hours  Office Hours are a greatly time to have a good Science.  They are yours.  Every  Wed (12:00 To 13:00)  Thur. (11:00 To 12:00)  Office (AD010) 12 Presented & Prepared by: Mahmoud R. Alfarra
How to be successfully ?!  Prepare my lectures.  Re-study them.  Have a mood.  Choose your friends.  Ask allah . 13 Presented & Prepared by: Mahmoud R. Alfarra
Course outlines  Array data structure  Sorting Algorithms  Searching Algorithms  Dynamic Data Structures  Array Lists  Linked Lists  Stacks  Queues  Trees, graphs  Collection Classes 14 Presented & Prepared by: Mahmoud R. Alfarra
What is Data Structures ?  The collection of basic data types is called data structure. 15 Presented & Prepared by: Mahmoud R. Alfarra
Classification of data structure 16 Presented & Prepared by: Mahmoud R. Alfarra Structure Non Linear Hierarchical Group Linear
Linear data structure 17 Presented & Prepared by: Mahmoud R. Alfarra Head Linked List Stack Queue
Non-linear data structure  A hierarchical collection is a group of items divided into levels. An item at one level can have successor items located at the next lower level. 18 Presented & Prepared by: Mahmoud R. Alfarra
Non-linear data structure  A nonlinear collection of items that are unordered is called a group.  The three major categories of group collections are sets, graphs, and networks. 19 Presented & Prepared by: Mahmoud R. Alfarra
Classification of data structure 20 Presented & Prepared by: Mahmoud R. Alfarra Memory allocation Dynamic Static
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.  Example: array data structure 21 Presented & Prepared by: Mahmoud R. Alfarra
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.  Dynamic data structures as:  Array lists  Linked Lists  Stacks  Queues  Trees 22 Presented & Prepared by: Mahmoud R. Alfarra
Ahel Eljanna   ‫لَّل‬ ُ‫م‬‫ه‬َ ‫لَّلو‬َ َََ ‫ني‬ُ ‫دن‬‫د‬‫ا‬ ‫ُؤ‬‫م‬‫لَّله‬‫ا‬ُ‫لَّله‬َ‫د‬‫د‬َ ‫ع‬َ ‫و‬ ‫د‬‫د‬َُ‫لَّل‬ ِ‫د‬‫د‬ َ ‫لَّلن‬ َ ِ‫د‬‫د‬َ َ ‫ني‬ُ ‫ن‬‫ا‬ ‫ؤ‬ ‫لَّل‬ُ ‫د‬‫د‬َ ‫لَّلني‬‫ي‬َ ‫ر‬ ‫لَّل‬َ َ ‫د‬‫د‬‫د‬َ‫ِم‬َ ِ‫لَّل‬‫ا‬ ‫دِل‬‫د‬‫د‬َ ‫ه‬ُ‫د‬‫ه‬َُ ‫لَّلهن‬ِ‫د‬‫د‬‫د‬َ ‫ه‬َ‫ت‬َُ ‫َت‬ ‫لَّل‬ َ‫ي‬َ ‫لَّل‬َ ََِ‫د‬‫د‬‫د‬َ ‫ك‬َ ‫ني‬َ ‫لَّلو‬ِ‫د‬‫د‬‫د‬َ ‫يه‬َ‫ف‬ ‫لَّل‬ َ‫لَّل‬‫ي‬‫ِف‬‫د‬‫د‬‫د‬َ‫ب‬ ‫لَّله‬ُ ‫د‬‫د‬َ ‫لَّلني‬َ‫ه‬َ ‫دم‬‫د‬ُ ‫ا‬َ ‫ل‬َ ‫لَّلو‬َُ ‫د‬‫د‬َ ‫لَّلع‬ َ ِ‫د‬‫د‬ َ ‫ن‬ ‫لَّل‬َ ‫د‬‫د‬َ‫م‬َ‫ك‬‫لَّل‬‫ا‬ ‫در‬‫د‬َ ‫د‬‫ب‬ُ ََ‫ك‬‫لَّل‬َ‫د‬‫د‬‫م‬ ‫لَّل‬َ ‫دم‬‫د‬‫ا‬ ‫لَّله‬ ‫لَّل‬ ‫ا‬ ‫يم‬َ ‫ظ‬َ ‫ُع‬‫م‬‫لَّله‬‫ا‬ ‫ز‬ُ ‫م‬َ ‫ف‬ُ‫م‬‫ه‬ ‫لَّل‬‫ِف‬‫همتمب‬ 72
‫أشكركم‬ 24 ‫البيانات‬ ‫تراكيب‬ ‫مساق‬ ‫إعداد‬ ‫العلمية‬ ‫المادة‬ / ‫أ‬ . ‫ا‬ َّ‫الفــر‬ ‫رفيق‬ ‫محمود‬ ‫كلها‬ ‫للعلوم‬ ‫مفتاح‬ ‫السؤال‬ ... ‫الجاذبيــة‬ ‫قوانين‬ ‫إلى‬ ‫وصل‬ ‫التفاحـة‬ ‫وقعت‬ ‫لماذا‬ ‫سأل‬ ‫عندما‬ ‫نيوتن‬ ‫أن‬ ‫تذكر‬ ...

Chapter 0: introduction to data structure

  • 1.
    DATA STRUCTURE Chapter 0:Intro File Prepared & Presented by Mr. Mahmoud R. Alfarra 2010-2011 College of Science & Technology Dep. Of Computer Science & IT BCs of Information Technology http://mfarra.cst.ps
  • 2.
    Outline  Who isLecturer ?!  Course objectives  Resources  Course guidelines  Assessment  A word about lectures  Sending Home works & Questions  Office Hours  How to be successfully ?!  Course outlines  What is Data Structures ?  Classification of Data structure  Ahl Aljanna 
  • 3.
    Who is Lecturer?!  Mahmoud Rafeek Alfarra  Certificates:  MSc Computer Science,2008, Pattern Recognition, AAST, Alexandria, Egypt.  BSc Computer Science,2004, The Islamic University of Gaza, Palestine.  General Secondary School Certificate,1999, Science division, Khan Younis, Gaza, Palestine.  Currently :  Lecturer in CST (Full Time) since 4-2009 .  Lecturer in UCAS as part time since 9-2008.  Head of ITF2  Past:  Head Of Computer Center in CST (9-2009 To 10-2010)  Head of ITF1  Lecturer in QOU, UP, CST as Part Time  Contacts:  E-mail: m.farra@cst.ps Site: http://mfarra.cst.ps  YouTube channel: mralfarra1 FaceBook Page: mahmoudRfarra  Office: AD010 3 Presented & Prepared by: Mahmoud R. Alfarra
  • 4.
    Course objectives  Thiscourse aims to make the student capable of understanding and writing:  Algorithms of Sorting, Searching .  Different data structures as:  Array, ArrayList  Linked List  Stack  Queue  Tree  Graph 4 Presented & Prepared by: Mahmoud R. Alfarra
  • 5.
    Resources  Power point’sfiles prepared by me.  Books:  DATA STRUCTURES AND ALGORITHMS USING C#, Michael McMillan, Cambridge University Press, 2007  C# How to Program, Sixth Edition, By H. M. Deitel - Deitel & Associates, Inc., P. J. Deitel - Deitel & Associates, Inc. 5 Presented & Prepared by: Mahmoud R. Alfarra
  • 6.
    Course guidelines  Wehave 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. 6 Presented & Prepared by: Mahmoud R. Alfarra
  • 7.
    Course guidelines  Prepareyourself: For best understanding…  Study lecture one by one  Respect the lecture:  Any noise made during the lecture (e.g. A mobile phone ringing, a student talking to, or laughing with his or her mate, absent) will be considered impolite.  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. 7 Presented & Prepared by: Mahmoud R. Alfarra
  • 8.
    Assessment 8 100 60 Semester work 20 Theoretical Exam 10 PracticalExam 15 Quizzes & Attend.& HW 15 Project 40 Final T. Exam Presented & Prepared by: Mahmoud R. Alfarra
  • 9.
    A word aboutlectures  PPT notes will be available for all lectures on my web site, BUT:  You learn better when you actually have to write things down yourself.  Just reading/Listening along with my notes makes you sleepy.  Everything I say is NOT in the lecture notes, but anything I say MIGHT be on an exam or in a assignments, so you need to take notes on what I say  In this course, you should read/do practice/ ask many times if you hope to have an excellent grade. 9 Presented & Prepared by: Mahmoud R. Alfarra
  • 10.
    Notations 10 Presented & Preparedby: Mahmoud R. Alfarra Home Work HW 1.1 Be Care Very Important information
  • 11.
    Sending Home works& Questions  All home work must be send by CST’s moodle.  All your asks can be send to my e-mail m.farra@cst.ps.  You must set the title of your mail as  DS – Question – fname lname  You must respect the dead Line of sending home work. 11 Presented & Prepared by: Mahmoud R. Alfarra
  • 12.
    Office Hours  OfficeHours are a greatly time to have a good Science.  They are yours.  Every  Wed (12:00 To 13:00)  Thur. (11:00 To 12:00)  Office (AD010) 12 Presented & Prepared by: Mahmoud R. Alfarra
  • 13.
    How to besuccessfully ?!  Prepare my lectures.  Re-study them.  Have a mood.  Choose your friends.  Ask allah . 13 Presented & Prepared by: Mahmoud R. Alfarra
  • 14.
    Course outlines  Arraydata structure  Sorting Algorithms  Searching Algorithms  Dynamic Data Structures  Array Lists  Linked Lists  Stacks  Queues  Trees, graphs  Collection Classes 14 Presented & Prepared by: Mahmoud R. Alfarra
  • 15.
    What is DataStructures ?  The collection of basic data types is called data structure. 15 Presented & Prepared by: Mahmoud R. Alfarra
  • 16.
    Classification of datastructure 16 Presented & Prepared by: Mahmoud R. Alfarra Structure Non Linear Hierarchical Group Linear
  • 17.
    Linear data structure 17 Presented& Prepared by: Mahmoud R. Alfarra Head Linked List Stack Queue
  • 18.
    Non-linear data structure A hierarchical collection is a group of items divided into levels. An item at one level can have successor items located at the next lower level. 18 Presented & Prepared by: Mahmoud R. Alfarra
  • 19.
    Non-linear data structure A nonlinear collection of items that are unordered is called a group.  The three major categories of group collections are sets, graphs, and networks. 19 Presented & Prepared by: Mahmoud R. Alfarra
  • 20.
    Classification of datastructure 20 Presented & Prepared by: Mahmoud R. Alfarra Memory allocation Dynamic Static
  • 21.
    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.  Example: array data structure 21 Presented & Prepared by: Mahmoud R. Alfarra
  • 22.
    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.  Dynamic data structures as:  Array lists  Linked Lists  Stacks  Queues  Trees 22 Presented & Prepared by: Mahmoud R. Alfarra
  • 23.
    Ahel Eljanna   ‫لَّل‬ ُ‫م‬‫ه‬َ ‫لَّلو‬َ َََ ‫ني‬ُ ‫دن‬‫د‬‫ا‬ ‫ُؤ‬‫م‬‫لَّله‬‫ا‬ُ‫لَّله‬َ‫د‬‫د‬َ ‫ع‬َ ‫و‬ ‫د‬‫د‬َُ‫لَّل‬ِ‫د‬‫د‬ َ ‫لَّلن‬ َ ِ‫د‬‫د‬َ َ ‫ني‬ُ ‫ن‬‫ا‬ ‫ؤ‬ ‫لَّل‬ُ ‫د‬‫د‬َ ‫لَّلني‬‫ي‬َ ‫ر‬ ‫لَّل‬َ َ ‫د‬‫د‬‫د‬َ‫ِم‬َ ِ‫لَّل‬‫ا‬ ‫دِل‬‫د‬‫د‬َ ‫ه‬ُ‫د‬‫ه‬َُ ‫لَّلهن‬ِ‫د‬‫د‬‫د‬َ ‫ه‬َ‫ت‬َُ ‫َت‬ ‫لَّل‬ َ‫ي‬َ ‫لَّل‬َ ََِ‫د‬‫د‬‫د‬َ ‫ك‬َ ‫ني‬َ ‫لَّلو‬ِ‫د‬‫د‬‫د‬َ ‫يه‬َ‫ف‬ ‫لَّل‬ َ‫لَّل‬‫ي‬‫ِف‬‫د‬‫د‬‫د‬َ‫ب‬ ‫لَّله‬ُ ‫د‬‫د‬َ ‫لَّلني‬َ‫ه‬َ ‫دم‬‫د‬ُ ‫ا‬َ ‫ل‬َ ‫لَّلو‬َُ ‫د‬‫د‬َ ‫لَّلع‬ َ ِ‫د‬‫د‬ َ ‫ن‬ ‫لَّل‬َ ‫د‬‫د‬َ‫م‬َ‫ك‬‫لَّل‬‫ا‬ ‫در‬‫د‬َ ‫د‬‫ب‬ُ ََ‫ك‬‫لَّل‬َ‫د‬‫د‬‫م‬ ‫لَّل‬َ ‫دم‬‫د‬‫ا‬ ‫لَّله‬ ‫لَّل‬ ‫ا‬ ‫يم‬َ ‫ظ‬َ ‫ُع‬‫م‬‫لَّله‬‫ا‬ ‫ز‬ُ ‫م‬َ ‫ف‬ُ‫م‬‫ه‬ ‫لَّل‬‫ِف‬‫همتمب‬ 72
  • 24.
    ‫أشكركم‬ 24 ‫البيانات‬ ‫تراكيب‬ ‫مساق‬ ‫إعداد‬‫العلمية‬ ‫المادة‬ / ‫أ‬ . ‫ا‬ َّ‫الفــر‬ ‫رفيق‬ ‫محمود‬ ‫كلها‬ ‫للعلوم‬ ‫مفتاح‬ ‫السؤال‬ ... ‫الجاذبيــة‬ ‫قوانين‬ ‫إلى‬ ‫وصل‬ ‫التفاحـة‬ ‫وقعت‬ ‫لماذا‬ ‫سأل‬ ‫عندما‬ ‫نيوتن‬ ‫أن‬ ‫تذكر‬ ...