BIP1024 DATA STRUCTURES AND ALGORITHMSPiri Reis UniversityDegree Programs COMPUTER PROGRAMMINGGeneral Information For StudentsDiploma SupplementErasmus Policy StatementNational Qualifications
COMPUTER PROGRAMMING
Qualification Awarded Length of Program Toplam Kredi (AKTS) Mode of Study Level of Qualification & Field of Study
Associate (Short Cycle) Degree 2 120 FULL TIME TQF, TQF-HE, EQF-LLL, ISCED (2011):Level 5
QF-EHEA:Short Cycle
TQF-HE, ISCED (1997-2013): 48

General Course Description Information

Course Code: BIP1024
Course Name: DATA STRUCTURES AND ALGORITHMS
Course Semester: Spring
Course Credits:
Theoretical Uygulama Credit ECTS
3 0 3 6
Language of instruction:
Condition of Course: BIP1023 - BİLGİSAYAR TEKNOLOJİLERİ VE PROGRAMLAMA
Does the Course Work Experience Require?: No
Course Type : Zorunlu
Course Level:
Associate TQF-HE:5. Master`s Degree QF-EHEA:Short Cycle EQF-LLL:5. Master`s Degree
Mode of Delivery: Face to face
Name of Coordinator: Dr. Öğr. Üyesi Refik Tanju SİRMEN
Course Lecturer(s): Refik Tanju Sirmen
Course Assistants:

Objective and Contents of the Course

Course Objectives: This course aims to give generic information about main concepts, data structures, and algorithms of software engineering, teach effective data structure and algorithm creation and evaluation rules, and some important algorithms.
Upon the successful completion of this course, the students will gain basic knowledge and skills in the following areas:
1. Specific software engineering concepts.
2. Algorithm design and evaluation techniques
3. Basic and Dynamic data structures.
4. Main computational problems and solution approaches.
5. Specific important algorithms.
Course Content: This course teaches specific concepts, data structures, and algorithms of software engineering, besides algorithm evaluation techniques and some important algorithms.

Learning Outcomes

The students who have succeeded in this course;
1) Basic data types and memory organization, Modules and variable declaration span, Classes and objects
2) Recursion, Algorithm and Algorithm analysis, Dynamic data structures
3) Search algorithms, Sort algorithms, Communication problems and solutions
4) Discrete vs. Fuzzy logic, Other main concepts and approaches
5) Various important problems and algorithms

Ders Akış Planı

Week Subject Related Preparation
1) Basic data types and memory organization
2) Modules and variable declaration span
3) Classes and objects
4) Recursion
5) Algorithm and algorithm analysis
6) Dynamic data structures
7) Search algorithms
8) Sort algorithms
9) Communication problems and solutions
10) Discrete vs. Fuzzy logic
11) Other main concepts and approaches
12) Some important problems and algorithms
13) Term Project Presentation
14) Final Exam

Sources

Course Notes / Textbooks: • Baka B., Python Data Structures and Algorithms, Packt Publishing, ISBN: 978-1-78646-735-5, 2017.
• Notes and Presentations
• Sample programs
References: • Bhargava A.Y., Grokking Algorithms - An Illustrated Guide for Programmers and Other Curious People, Manning Publications Co., ISBN: 9781617292231, 2016.

Contribution of The Course Unit To The Programme Learning Outcomes

Course Learning Outcomes

1

2

3

4

5

Program Outcomes
1) An ability to apply basic knowledge of mathematics, science, and engineering 1 1 1
2) To learn basic computer knowledge, to make use of software and hardware components needed in the professional work life 1 1 1 1
3) To think algorithmically and use this ability in conducting software planning 1 1 1
4) To define professional work life problems and to be able to solve them 1 1
5) To code by using uptodate software programming languages 1 1 1 1
6) To design and code software using Internet technologies, to code client/server based programs
7) To learn designing a database and to code programs that have connection with a database
8) To gain basic electrics and electronics knowledge related with the computer hardware
9) An ability to apply their knowledge to maritime discipline 1 1
10) To get responsibility in analyzing, designing, planning and coding phases of a software as well as writing reports in each of these phases. To have non-administrative responsibilities in project production 1 1
11) To have a general knowledge about computer networks
12) To have basic knowledge about operating systems
13) To attain an ability to communicate written and orally effectively 1 1
14) To take responsibility and initiative, to make decisions and be creative 1 1
15) A recognition of the need for, and an ability to engage in life-long learning
16) An understanding of professional and ethical responsibilities
17) To be able to read and understand technical documents written in both Turkish and English, to be able to communicate written and orally effectively 1 1

Course - Learning Outcomes

No Effect 1 Lowest 2 Average 3 Highest
       
Program Outcomes Level of Contribution
1) An ability to apply basic knowledge of mathematics, science, and engineering 2
2) To learn basic computer knowledge, to make use of software and hardware components needed in the professional work life 2
3) To think algorithmically and use this ability in conducting software planning 1
4) To define professional work life problems and to be able to solve them 1
5) To code by using uptodate software programming languages 1
6) To design and code software using Internet technologies, to code client/server based programs 3
7) To learn designing a database and to code programs that have connection with a database 3
8) To gain basic electrics and electronics knowledge related with the computer hardware 3
9) An ability to apply their knowledge to maritime discipline 2
10) To get responsibility in analyzing, designing, planning and coding phases of a software as well as writing reports in each of these phases. To have non-administrative responsibilities in project production 2
11) To have a general knowledge about computer networks 3
12) To have basic knowledge about operating systems 3
13) To attain an ability to communicate written and orally effectively 2
14) To take responsibility and initiative, to make decisions and be creative 2
15) A recognition of the need for, and an ability to engage in life-long learning 3
16) An understanding of professional and ethical responsibilities 3
17) To be able to read and understand technical documents written in both Turkish and English, to be able to communicate written and orally effectively 2

Learning Activities and Teaching Methods

Assessment & Evaluation Methods of the Course Unit

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Attendance 1 % 10
Project 1 % 45
Semester Final Exam 1 % 45
Total % 100
PERCENTAGE OF SEMESTER WORK % 55
PERCENTAGE OF FINAL WORK % 45
Total % 100

Workload & ECTS Credits of The Course Unit

Aktiviteler Number of Activities Duration (Hours) Workload
Course 14 3 42
Presentations / Seminar 1 20 20
Project 1 45 45
Semester Final Exam 1 45 45
Total Workload 152