1 / 40

CSG2A3 ALGORITMA dan STRUKTUR DATA

This course, led by Anditya Arifianto, introduces students to data structures and algorithms. Topics covered include the importance of data organization, data structure classification, space-time tradeoffs, and selecting appropriate data structures. Students will learn to implement linked lists in practical scenarios, such as stacks, queues, trees, and graphs. The course emphasizes problem-solving through exercises and assignments.

Download Presentation

CSG2A3 ALGORITMA dan STRUKTUR DATA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CSG2A3ALGORITMA dan STRUKTUR DATA First Meet : Course Introduction

  2. Course Introduction • Course Name: Struktur Data • Course Code: CCH1D4 • Credits : 3+1 SKS • 14 weeks, each • 3 x50 minutes class (round up to 4) • 150 minutes lab work (10 weeks) • 3 x 2 hours of structured exercise • 3 x 2 hours of independent activity

  3. Introduction • AndityaArifianto • NIP: 14890028 • HP: 085295464439 • Email: • anditya@telkomuniversity.ac.id • anditya.arifianto@gmail.com • http://anditya.staff.telkomuniversity.ac.id • Can be found at: • AI Lab (E107)

  4. Our Rules • Any kind of Cheating and Plagiarism is not acceptable • Be responsible with your attendance • What about language? • Mind your manner • Activity is a point

  5. Point distributions • Mid and Final Exam  60% • Mid Exam 25-30% • Final Exam 30-35% • Assignment, Quiz, Project  25% • Assignment + Quiz 10-15% • Project 10-15% • Practicum  15%

  6. [Possible] CLO distribution • CLO1 : Array and Linear Linked List • Exercise, Lab Assessment 1, Mid Term • CLO2 : Linked List Variation • Exercise, Lab Assessment 2, Mid Term • CLO3 : Stack and Queue • Exercise, Lab Assessment 3, Final Term • CLO4 : Non Linear : Tree and Graph • Exercise, Lab Assessment 4, Final Term • CLO5 : Final Project

  7. Course Outline

  8. Course Outline – Lab Work

  9. Final Points

  10. Points – [Possible] Remedial • CLO 1 and 2 • Mid Term Exam • Time : Late Mid or Late Final • CLO 3 and 4 • Final Term Exam • Time : Late Final • CLO 5 • No Remedial

  11. Cheating Punishment • Proven cheating on Lab works or Exercises • Zero score on the respective task • Proven cheating during Assessment • Zero score on the respective CLO • No Remedial • Proven cheating on Final Project • Zero score on CLO 5

  12. A little time to know you guys • Please answer honestly and independently • Write down your nickname, student number, class, and gender • Write down your Algorithms and Programming subject scores • In scale of 1 to 5 (1 bad, 5 good) score yourself how proficient are you in the subject? • Write down your score from Calculus I and II • How many handshakes if 5 people shakes hands with every other person? • Draw a 2D shape

  13. Read: http://anditya.staff.telkomuniversity.ac.id/academic/asd/ http://anditya.staff.telkomuniversity.ac.id/penggunaan-software-versioning-di-kelas-pemrograman

  14. Understanding Data Structure and Algorithm

  15. Organizing Data • data structure is meant to be • an organization for a collection of data items. • a way of organizing input data and operations which can be performed on this data • Organized data must be able to be searched, processed in any order, or modified • The choice of data structure and algorithm can make the difference between a program running in a few seconds or many days. CSG2A3 – AlgoritmaStruktur Data

  16. Why Data Structure? • In computer science, often the question is not how to solve a problem, but how to solve a problem well • In this case, it means Efficiency • Data structure is one of fundamental items to develop a good computer systems • You’ll learn Computer efficiency more deeply at other subject(Design and Analysis of Algorithms) CSG2A3 – AlgoritmaStruktur Data

  17. Space-Time Tradeoffs and Efficiency • trade-off between speed and memory • To make a more powerful computers  more complex applications. • More complex applications demand more calculations CSG2A3 – AlgoritmaStruktur Data

  18. Selecting a Data Structure • Analyze the problem to determine the resource constraints a solution must meet. • Determine the basic operations that must be supported. Quantify the resource constraints for each operation. • Select the data structure that best meets these requirements

  19. Data structure classification • Linear data structure • Stack • Queue • Non-linear data structure • Tree • Graph

  20. Course Outcome • To be able to choose the best data structure for a case • Understand the process and implementation of linked list structure • Implementing linked list data structure to a real case : stack, queue, tree, graph

  21. Visit

  22. Question?

  23. Programming and logic is depend on how often you practice

  24. Exercise • Write an algorithm to compute the formula down • Example • Input a : 2 • Input b : -3 • Input c : 1 • Output x1 : 1 • Output x2 : 0.5

  25. Exercise • Write an algorithm to raise any number to any power. • example • Input number : 2 • Input power : 3 • Output : 8

  26. Exercise • Write an algorithm that determines the type of a Triangle given the size of the three sides • Example • Input Side 1 : 4 • Input Side 2 : 6 • Input Side 3 : 4 • Output : isosceles

  27. Exercise • Write an algorithm to receive input number from user until user input = 9999. The program will output the minimum number inputted • Example • 3 • 6 • 2 • 6 • 9999 • Output : 2

  28. Exercise • Write an algorithm to receive input number from user until user input = 9999. The program will output the minimum number inputted • Example • 3 • 6 • 2 • 6 • 9999 • Output : 2

  29. Exercise • program temperatur converter [farenheit -> celcius] • C = (F - 32) * 5/9 • buatlah program untuk mengubah input suhu farenheit menjadi celcius • program akan menerima 3 buah input angka real dari user • program akan mengoutputkan hasil perubahan suhu ketiga inputan

  30. Exercise • buatlah program untukmenghitungindeksnilai • Input 3 nilai : UTS, UAS, kuis • Hitungnilaiakhir = 35% UTS + 35% UAS + 30% kuis • Tampilkanindex nilai sesuai aturan • A : 80 - 100 • AB : 75 - 79.99 • B :70 - 74.99 • BC : 60 - 69.99 • C : 50 - 59.99 • D : 40 - 49.99 • E : 0 - 39.99

  31. Exercise • Create an algorithm to draw a diagonal • Example : • Input 5 • Output • - - - x • - - x – • - x - - • x - - - x - - - -

  32. Github.com Create github.com account Install github for windows Open github.com/ASD-ADF Fork a repository Clone the repository to your PC Modify the file(s) with your solution to complete the task Add the files using : git add . Commit the modification using : git commit –m “message” Push the modification using : git push Create a pull request At the due date I will close the request with message

  33. Home Task • Install a C++ IDE or compiler program • At lab works we use Code::Blocks IDE • Create an empty Cpp project

  34. Home Task - Simple Calculator Create a simple calculator program that ask input operan1, operan2, and operator from user and output the result Make the program ask if the user wants to do the calculation again and loop the program

  35. Learn to Code • Learn programming using C-family programming language • Get used to it : • operators ( ==, !=, ++, --, +=, -=, *=, etc ) • Starts array and increment from 0 • Use • For ( int I = 0; I < 10; I++ ) • Rather than • For ( int I = 0; I <= 9; I++ )

  36. Learn to Code

More Related