Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Computer science: Add new graphs project #29037

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

damon314159
Copy link
Contributor

Because

The concept of graphs is introduced but rather swept under the rug in the current implementation of the knight travails project

This PR

  • Introduces a new project to go between BST and KT projects in the computer science section of both pathways.
  • Edits the existing KT project to make back-references to this project instead of introducing graphs haphazardly itself.

Issue

Closes #28487

Additional Information

Notes:

  • This is currently the first draft of this project. I have not yet translated it to Ruby, or edited the KT project as described in the "this PR" section. I want to get maintainer input on the substance of the project before proceeding with those two steps, since there are almost certainly changes that need to be made to this draft.
  • I've opted to keep the implementation as simple as possible. No specific mention of edge cases to be considered, no weighted or directed edges, and no dedicated Vertex wrapper class (though I do mention that this is a possibility later on in the project). I think what is here is plenty for the learner to understand the motivations and produce a basic implementation, without spending ages on niche aspects.
  • I included no methods regarding traversals or searching, since those concepts are introduced in the previous BST project, and are tied into the graphs with the subsequent KT project
  • I don't know how to either declare where the lesson should sit in the curriculum, nor how to add images to a lesson page 😅 . I might need some guidance on that once this gets through the drafting process.
  • I went ahead and produced a solution that's something like what I imagine learners would produce for this project. You can see it in this gist if you're curious what this might be like.

Pull Request Requirements

  • I have thoroughly read and understand The Odin Project curriculum contributing guide
  • The title of this PR follows the location of change: brief description of change format, e.g. Intro to HTML and CSS lesson: Fix link text
  • The Because section summarizes the reason for this PR
  • The This PR section has a bullet point list describing the changes in this PR
  • If this PR addresses an open issue, it is linked in the Issue section
  • If any lesson files are included in this PR, they have been previewed with the Markdown preview tool to ensure it is formatted correctly
  • If any lesson files are included in this PR, they follow the Layout Style Guide

@github-actions github-actions bot added the Content: JavaScript Involves the JavaScript course label Nov 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Content: JavaScript Involves the JavaScript course
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Knights Travails: Handle the concept of a graph more explicitly with new project
1 participant