close

Course

Algorithms and datastructures

IT00AI33-3007

Teacher

Jere Tofferi

About me

Dad and teacher

Master's Degree from Math 2013

Some work experience as developer, a lot of free time coding

General Information

Course is a bit under development...

We have good material from previous years

My style - general ideas

I have never before taught or studied in AMK

I know, you should be the best doers ("applied sciences") in Finland on the field

I hope, that you can read theory yourself. Then we think it together / I "teach" it to you.

I hope, that we can code together in our sessions (even some exercises).

My style - concrete

I will arrange an exam. You need to qualify to pass the course.

Grade comes from the exercises

From tofferi.fi/dsa you can follow how I want you to progress the course (together)

You should be good with the course material and the exercises! (more independent way)

About Topic

Subject is a bit theoretical

Difficult (or easy), many levels

Motivation

After basics, not necessarily used in everyday coding. BUT...

  • Challenge your thinking endurance -> you get stronger
  • Learn general coding skills
  • Tech lead position
  • Big companies, recruitment criteria

Into action, C#

Now we start coding

Programming

Session exercises:

Start VSCode (close open folder/workspace)

Create folder for course, then folder for session 1

Create folders for single exercises, start with

Create .net project to folder ex1

Exercise 1: check even

Code: inputs one number, checks if number is even, prints true or false

Exercise 2: check bigger

Code: inputs two numbers, checks which one is bigger, prints bigger number

Exercise 3: print fibonacci

Code: inputs one number, prints fibonacci sequence (input describes number count)

Exercise 4: check palindrome

Code: inputs a string, test if string is palindrome, prints true or false

Exercise 5: reverse string

Code: inputs a string, reverses string, prints reversed string

Algorithms

All above are algorithms

Performance

Let's add simple performance testing to algorithms above