Analyse and Refactor Functions

Open
#3 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
Half a day
Newbie friendliness
52/100
Issue type
Refactor
Clarity
Mostly clear
Activity status
Quiet
Tech stack
python
Domain
performance

Research direction

Start with the Sprint-1 coursework linked in the issue and inspect the provided functions for time or space inefficiency. For each function, document the complexity analysis, refactor it to reduce complexity, and explain the improvement in the pull request; review others' analyses before submitting.

Written by the indexing model from the issue text.

Description

🏕 Priority Mandatory 📅 Sprint 1 🦑 Size Large Core Module-Complexity Submit:PR
Link to the coursework

https://github.com/CodeYourFuture/Module-Complexity/tree/main/Sprint-1

Learning Objectives
  • Identify areas of inefficiency that contribute to higher time or space complexity
  • Refactor the code to reduce its complexity.
  • Review the analyses of others
Why are we doing this?

It is easier to understand complexity in the abstract than it is to recognise and apply it in our everyday code. In this module you will focus on noticing complexity in code you and your colleagues write.

In Sprint 1, we have provided you a selection of functions that are written in inefficient ways. Your goal is to collaborate on refactoring these functions. It's not enough to improve the code, you must also explain why your refactor is objectively better.

Maximum time in hours

6

How to get help

Bring this to class and study groups. The goal is to collaborate.

How to submit

Fork the repo to your own GitHub account
Make regular small commits with clear messages
When you are ready, open a Pull Request to the CYF repo
Make sure you explain your work clearly in your PR message

Dominant language
Python
Stars
0
Forks
60
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from CodeYourFuture/Module-Complexity

All issues in CodeYourFuture/Module-Complexity

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.