ITGS220 : Data Structure

Department

Department of Mobile Computing

Academic Program

Bachelor in Mobile Computing

Type

Compulsory

Credits

03

Prerequisite

ITGS122

Overview

Classification of data structures, space and time considerations. Linked lists, stacks and queues. Tree structures, binary search trees. Array and pointer based implementations. Recursive applications. Sorting and searching.

Intended learning outcomes

Knowledge and understanding

To familiarize the student with the types of data structures.
  • That the student know how to choose the data structure that allows the data to operate easily by the steps in the algorithm.
  • The student describes how the data structure is applied in everyday life.
  • The student draws the structure of the data and how operations are performed on it by drawing and writing instructions in C language on how to perform this operation.
  • That the student know how to write a program in C language to apply the data structure.

mental skills

  • That the student distinguish between the types of data structures and the appropriate use of each structure.
  • That the student compares the different types of data structures in terms of how they are formed and the operations that are performed on them using a program in the C language, through: A written exam.
  • That the student deduces the shape of the data structure after each operation conducted on it, through: Case study.
  • The student proposes an appropriate solution to a problem in performing operations on a data structure using C language instructions, through: Assignment.
  • The student analyzes the process of sorting and organizing the data according to the method required for sorting, through: A written exam.

Practical and professional skills

  • That the student design effective algorithms Efficient Algorithms.
  • That the student use effective methods to manage large amounts of data with high efficiency, such as: large data bases.

General and transferable skills

  • The student should be able to communicate, written and oral, through: The ability to communicate and communicate.
  • That the student be able to use the means of modern technology, through: The ability to use the computer and the Internet.
  • That the student be able to solve problems, through: The ability to write programs in C language.

Teaching and learning methods

  • Lectures
  • Tutorials
  • Problem-based learning
  • Mini-projects

Methods of assessments

  • First midterm exam = 20
  • Homework = 5
  • Second midterm test = 25
  • Final exam = 50

Course contents

  • Introduction for data structures .
  • Data types
  • Array I
  • Array II
  • Lists : ( Stack)
  • Lists : ( Linear Queue)
  • Lists : ( Circular Queue)
  • Lists : ( Single Linked List)
  • Lists : (Double Linked List)
  • Sorting
  • Tree
  • Binary tree
  • Graph

Principles of Games Developments (ITMC404)
Parallel and Distributed Computing (ITMC403)
Mobile Multimedia (ITMC402)
Mobile 3D Graphics (ITMC401)
Mobile Commerce (ITMC304)
Programming Paradigms (ITMC302)
ARM microprocessor (ITMC301)
Arabic language 1 (ITAR111)
General English1 (ITEL111)
Physics (ITPH111)
Intro to Information Technology (ITGS111)
Problem solving Technic (ITGS113)
Mathematics I (ITMM111)
Arabic language 2 (ITAR122)
Mathematics II (ITMM122)
General English2 (ITEL122)
Introduction to Programming (ITGS122)
System Analysis and Design (ITGS124)
logic Circuit Design (ITGS126)
Introduction to Statistics (ITST211)
Object Oriented Programmin (ITGS211)
Introduction to Software Engineering (ITGS213)
Introduction to Networking (ITGS215)
Discrete Structures (ITGS217)
Numerical analysis (ITGS219)
Computer Architucture & Organization (ITGS223)
Data Structure (ITGS220)
Foundation of Information Systems (ITGS222)
Information Security (ITGS224)
Introduction to Internet Programming (ITGS226)
Introduction to Databases (ITGS228)
Mobile Applications Development (ITMC311)
Design and Analysis algorithms (ITGS301)
Operating System (ITGS302)
Principles of mobile communication networks (ITMC312)
IT Project Management (ITGS303)
Scientific Writing (ITGS304)
Cross-Platform Mobile App Development (Flutter) (ITMC323)
Heterogeneous and Mobile Databases (ITMC322)
Mobile Interaction Design (ITMC321)
Mobile Operating System (ITMC313)
Security in mobile computing (ITMC411)
Personal Area Networks (ITMC412)
Social Networking (ITMC413)
Networks Programming (ITMC414)
Fundamentals ubiquitous computing (ITMC421)
Cloud Computing (ITMC422)