Topic outline

  • Welcome to the world of Algorithm Lab

     Welcome Note 


    Hello Students!
    Welcome to the course "Algorithm Lab (CSE215)" in Summer 2021. In this course, you are going to learn the fundamental concepts of Algorithms. You will get to know some of the searchings, sorting algorithms and implement them for problem-solving. We are going to study in an approach that you will get all the support in this online platform. The course is designed with plenty of tutorials and resources. You will find course contents, reference books, course delivery plans, all kinds of announcements, and contact information here. 
    So, Let's start our journey and make this journey a great and remarkable one.



  • Week-01 Preparing Background

    Topics of discussion

    • Introduction and importance of Algorithm and its application
    • Discussion on Array, Loop, Control Statements etc.

    Expected Learning Outcome

    • Gain knowledge about the importance of algorithm
    • Perform exercise on the array, string, and Control Statements etc.

    Learning Resources 



  • Week-02 Notation and Complexity Analysis

    Topics of Discussion

    • Introduction and importance of Functions and it's applications.
    • Function and Recursion, Euclid's Greatest Common Divisor (GCD) Algorithm.

    Expected Learning Outcome

    • Gain knowledge about the importance of Functions, Euclid’s Greatest Common Divisor(GCD) Algorithm.
    • Perform exercise on the Function, Recursive Functions, and Array.

    Learning Resources 

    • Lab Manual [View]
    • Video Lecture [View ]

  • Week-03 Searching and Sorting Algorithm

    Topics of Discussion

    • Introduction to the searching Algorithm. 
    • Discussion on the Complexity of Algorithms.


    Expected Learning Outcome

    • Understand and Implementation of Binary and Linear search-related problems.
    • Find out the complexity of any code or algorithm.


    Learning Resources 

    • Lab Manual [View]
    • Video Lecture [View ]

  • Week-04 Sorting Algorithm Based on Brute Force Approach

    Topics of Discussion

    • Introduction to the Brute Force Approach. 
    • Introduction to the Sorting Algorithm based on Divide and Conquer Approach. 

    Expected Learning Outcome

    • Knowledge about the Bubble sort algorithm and its complexity
    • Knowledge about the Insertion sort algorithm and its complexity
    • Exercise the Sorting Algorithm with some additional problems.

    Learning Resources 

    • Lecture Slide [View]
    • Lab Manual [View]
    • Video Lecture [View ]

  • Week-05 Sorting Algorithm Based on Divide and Conquer Approach

    Topics of Discussion

    • Introduction to the Divide and Conquer Approach. 
    • Introduction to the Sorting Algorithm based on Divide and Conquer Approach. 

    Expected Learning Outcome

    • Knowledge about the Merge sort algorithm and its complexity
    • Knowledge about the Quicksort algorithm and its complexity
    • Exercise the Sorting Algorithm with some additional problems.

    Learning Resources 

    • Lab Manual [View]
    • Video Lecture [View]

  • Week-06 Introduction to Greedy Approach

    Topics of discussion

    • Introduction to Greedy Programming
    • Discussion on Coin Change Problem
    • Discussion on Knapsack Problem 


    Expected Learning Outcome

    • Solve the Coin Change Problem based on Greedy Approach
    • Solve the Knapsack Problem based on Greedy Approach
    • Exercise the Bin-packing Algorithm with some additional problems in the Lab.


    Learning Resources 

    • Lab Manual [View]
    • Video Lecture [View ]

  • Week-07 Mid-Term Examination

    No Lab. There will be a post-midterm Lab Test and Assignment for the lab.



      • Week-08: Lab Performance Test

        Dear Students,
        A Lab Test will be held online on the BLC platform. You have to solve programming problems and then have to show me by explaining your work.

        Syllabus:

        • Searching Algorithm (Binary and Linear Search)
        • Sorting Algorithm (Selection Sort, Insertion Sort, Bubble Sort, Merge Sort, Quick Sort)

        For details check google classroom.

      • Week-09 Introduction to Dynamic Programming

        Topics of discussion

        • Introduction to Dynamic Programming
        • Discussion on Coin Change Problem
        • Discussion on Knapsack Problem 


        Expected Learning Outcome

        • Solve the Coin Change Problem based on Dynamic Approach.
        • Solve the Knapsack Problem based on Dynamic Approach.
        • Solve the Fibonacci Problem based on Dynamic Approach.


        Learning Resources 

        • Lab Manual [View]
        • Video Lecture [View ]

      • Week-10 Final Presentation and Lab Final

        Project Presentation


        Upload your report to the following google drive within three days after your presentation. Each team will upload one report in the format given in Project Guideline and upload your report in pdf. Rename the file by your Group name and Title before uploading. 


      • Week-11 Final Presentation and Lab Final (Continuation)

        Project Presentation


        Upload your report to the following google drive within three days after your presentation. Each team will upload one report in the format given in Project Guideline and upload your report in pdf. Rename the file by your Group name and Title before uploading.