Skip to main content

Data structures and algorithmsLaajuus (3 cr)

Code: HTKA0060

Credits

3 op

Teaching language

  • Finnish

Responsible person

  • Tommi Tuikka

Objective

The purpose of the course
Do you want to learn how to design and develop more efficient algorithms and use more diverse data structures in their development? Data Structures and Algorithms is a course that deepens the knowledge of the basics of programming and develops the problem-solving skills needed in programming.

Course competencies
Application development expertise

Course competence
The student knows the most common data structures used in software development and is able to utilize them in the development of algorithms. The student knows the most common types of algorithms and understands the importance of the efficiency of algorithms. The student is able to apply the things learned in the course in solving problems related to software development. The aim of the course is not to achieve in-depth theoretical knowledge, but to provide a quick and practical overview of the topic.

Content

The most common data structures and types of algorithms, the use of data structures in the development of algorithms, the efficiency of algorithms, the applications of algorithms.

Qualifications

To participate in the course you will need to master the basics of programming in the Javascript programming language.

Assessment criteria, satisfactory (1)

(Adequate 1) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 50% of the tasks.

(Satisfactory 2) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 70% of the tasks.

Assessment criteria, good (3)

(Good 3) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to do all the exercises and reached the result specified in the instructions in at least 80% of the tasks.

(Commendable 4) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to complete all the exercises and reached the result specified in the instructions in at least 90% of the tasks.

Assessment criteria, excellent (5)

(Excellent 5) In addition to the above requirements, the student is able to critically evaluate the functionality of data structures and algorithms in different situations and understand their selection criteria for different uses. He has completed all the exercises and reached the end result specified in the instructions.

Timing

26.08.2024 - 11.10.2024

Number of ECTS credits allocated

3 op

Mode of delivery

Face-to-face

Unit

School of Business

Campus

Main Campus

Teaching languages
  • Finnish
Seats

20 - 40

Degree programmes
  • Bachelor's Degree Programme in Business Information Technology
Teachers
  • Tommi Tuikka
Groups
  • ZJA24SI
    Avoin amk, tiko
  • HTK23S1
    Tietojenkäsittely (AMK)

Objectives

The purpose of the course
Do you want to learn how to design and develop more efficient algorithms and use more diverse data structures in their development? Data Structures and Algorithms is a course that deepens the knowledge of the basics of programming and develops the problem-solving skills needed in programming.

Course competencies
Application development expertise

Course competence
The student knows the most common data structures used in software development and is able to utilize them in the development of algorithms. The student knows the most common types of algorithms and understands the importance of the efficiency of algorithms. The student is able to apply the things learned in the course in solving problems related to software development. The aim of the course is not to achieve in-depth theoretical knowledge, but to provide a quick and practical overview of the topic.

Content

The most common data structures and types of algorithms, the use of data structures in the development of algorithms, the efficiency of algorithms, the applications of algorithms.

Time and location

Autumn 2024

Learning materials and recommended literature

Study material on the course website https://tiko.jamk.fi/~tuito/tira/

Teaching methods

Video lectures and contact hours with guidance.

The course can also be completed entirely online. The course includes pre-recorded video lectures and the solutions to the tasks can be tested by means of the unit tests provided. In addition, the course includes a 0.5-1 hour personal assessment interview with the teacher via Zoom.

Student workload

81 hours

Further information for students

The exercises will be assessed in a personal assessment interview. Understanding the solutions to the exercises and answering the teacher's questions will be the main focus of the assessment. Simply completing the exercises, e.g. with the help of AI, does not guarantee a grade.

Evaluation scale

0-5

Evaluation criteria, satisfactory (1-2)

(Adequate 1) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 50% of the tasks.

(Satisfactory 2) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 70% of the tasks.

Evaluation criteria, good (3-4)

(Good 3) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to do all the exercises and reached the result specified in the instructions in at least 80% of the tasks.

(Commendable 4) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to complete all the exercises and reached the result specified in the instructions in at least 90% of the tasks.

Evaluation criteria, excellent (5)

(Excellent 5) In addition to the above requirements, the student is able to critically evaluate the functionality of data structures and algorithms in different situations and understand their selection criteria for different uses. He has completed all the exercises and reached the end result specified in the instructions.

Prerequisites

To participate in the course you will need to master the basics of programming in the Javascript programming language.

Enrollment

01.08.2023 - 24.08.2023

Timing

28.08.2023 - 27.10.2023

Number of ECTS credits allocated

3 op

Mode of delivery

Face-to-face

Unit

School of Business

Campus

Main Campus

Teaching languages
  • Finnish
Seats

20 - 45

Degree programmes
  • Bachelor's Degree Programme in Business Information Technology
Teachers
  • Tommi Tuikka
Groups
  • HTK22S1
    Tietojenkäsittely (AMK)
  • ZJA23SI
    Avoin amk, tiko

Objectives

The purpose of the course
Do you want to learn how to design and develop more efficient algorithms and use more diverse data structures in their development? Data Structures and Algorithms is a course that deepens the knowledge of the basics of programming and develops the problem-solving skills needed in programming.

Course competencies
Application development expertise

Course competence
The student knows the most common data structures used in software development and is able to utilize them in the development of algorithms. The student knows the most common types of algorithms and understands the importance of the efficiency of algorithms. The student is able to apply the things learned in the course in solving problems related to software development. The aim of the course is not to achieve in-depth theoretical knowledge, but to provide a quick and practical overview of the topic.

Content

The most common data structures and types of algorithms, the use of data structures in the development of algorithms, the efficiency of algorithms, the applications of algorithms.

Further information for students

Avoin 2
EduFutura 3

Evaluation scale

0-5

Evaluation criteria, satisfactory (1-2)

(Adequate 1) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 50% of the tasks.

(Satisfactory 2) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 70% of the tasks.

Evaluation criteria, good (3-4)

(Good 3) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to do all the exercises and reached the result specified in the instructions in at least 80% of the tasks.

(Commendable 4) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to complete all the exercises and reached the result specified in the instructions in at least 90% of the tasks.

Evaluation criteria, excellent (5)

(Excellent 5) In addition to the above requirements, the student is able to critically evaluate the functionality of data structures and algorithms in different situations and understand their selection criteria for different uses. He has completed all the exercises and reached the end result specified in the instructions.

Prerequisites

To participate in the course you will need to master the basics of programming in the Javascript programming language.

Enrollment

01.08.2022 - 25.08.2022

Timing

29.08.2022 - 21.12.2022

Number of ECTS credits allocated

3 op

Virtual portion

2 op

Mode of delivery

34 % Face-to-face, 66 % Online learning

Unit

School of Business

Teaching languages
  • Finnish
Seats

0 - 45

Degree programmes
  • Bachelor's Degree Programme in Business Information Technology
Teachers
  • Tommi Tuikka
Groups
  • ZJK22SI
    Korkeakoulujen välinen yhteistyö, TIKO
  • HTK21S1
    Tietojenkäsittely (AMK)
  • ZJA22SI
    Avoin AMK, tiko

Objectives

The purpose of the course
Do you want to learn how to design and develop more efficient algorithms and use more diverse data structures in their development? Data Structures and Algorithms is a course that deepens the knowledge of the basics of programming and develops the problem-solving skills needed in programming.

Course competencies
Application development expertise

Course competence
The student knows the most common data structures used in software development and is able to utilize them in the development of algorithms. The student knows the most common types of algorithms and understands the importance of the efficiency of algorithms. The student is able to apply the things learned in the course in solving problems related to software development. The aim of the course is not to achieve in-depth theoretical knowledge, but to provide a quick and practical overview of the topic.

Content

The most common data structures and types of algorithms, the use of data structures in the development of algorithms, the efficiency of algorithms, the applications of algorithms.

Time and location

Syksy 2022

Learning materials and recommended literature

Oppimateriaali verkkosivuilla

Teaching methods

Videoluennot ja ohjaustunnit

Student workload

87 tuntia

Further information for students

EduFutura 5

Evaluation scale

0-5

Evaluation criteria, satisfactory (1-2)

(Adequate 1) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 50% of the tasks.

(Satisfactory 2) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 70% of the tasks.

Evaluation criteria, good (3-4)

(Good 3) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to do all the exercises and reached the result specified in the instructions in at least 80% of the tasks.

(Commendable 4) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to complete all the exercises and reached the result specified in the instructions in at least 90% of the tasks.

Evaluation criteria, excellent (5)

(Excellent 5) In addition to the above requirements, the student is able to critically evaluate the functionality of data structures and algorithms in different situations and understand their selection criteria for different uses. He has completed all the exercises and reached the end result specified in the instructions.

Prerequisites

To participate in the course you will need to master the basics of programming in the Javascript programming language.

Timing

10.01.2022 - 20.05.2022

Number of ECTS credits allocated

3 op

Mode of delivery

Face-to-face

Unit

School of Business

Teaching languages
  • Finnish
Degree programmes
  • Degree Programme in Business Information Systems
Teachers
  • Tommi Tuikka
Groups
  • ZJK22KI
    Korkeakoulujen välinen yhteistyö, TIKO
  • ZJA22KI
    Avoin AMK, tiko

Objectives

The purpose of the course
Do you want to learn how to design and develop more efficient algorithms and use more diverse data structures in their development? Data Structures and Algorithms is a course that deepens the knowledge of the basics of programming and develops the problem-solving skills needed in programming.

Course competencies
Application development expertise

Course competence
The student knows the most common data structures used in software development and is able to utilize them in the development of algorithms. The student knows the most common types of algorithms and understands the importance of the efficiency of algorithms. The student is able to apply the things learned in the course in solving problems related to software development. The aim of the course is not to achieve in-depth theoretical knowledge, but to provide a quick and practical overview of the topic.

Content

The most common data structures and types of algorithms, the use of data structures in the development of algorithms, the efficiency of algorithms, the applications of algorithms.

Time and location

Kevät 2022

Learning materials and recommended literature

Oppimateriaali verkkosivuilla

Teaching methods

Videoluennot, tehtävät

Student workload

87 tuntia

Evaluation scale

Pass/Fail

Evaluation criteria, satisfactory (1-2)

(Adequate 1) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 50% of the tasks.

(Satisfactory 2) The student is able to use data structures and implement simple algorithms using models presented in lessons or tutorials on the web. He has tried to do all the exercises and reached the result determined by the instructions in at least 70% of the tasks.

Evaluation criteria, good (3-4)

(Good 3) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to do all the exercises and reached the result specified in the instructions in at least 80% of the tasks.

(Commendable 4) The student is able to use data structures and implement simple algorithms and is able to apply the learned methods also in the development of slightly more demanding algorithms. He is able to expand his knowledge on his own initiative beyond the things presented in the course. He has tried to complete all the exercises and reached the result specified in the instructions in at least 90% of the tasks.

Evaluation criteria, excellent (5)

(Excellent 5) In addition to the above requirements, the student is able to critically evaluate the functionality of data structures and algorithms in different situations and understand their selection criteria for different uses. He has completed all the exercises and reached the end result specified in the instructions.

Prerequisites

To participate in the course you will need to master the basics of programming in the Javascript programming language.