{"id":20409700,"url":"https://github.com/sleekpanther/interval-partitioning-greedy-algorithm","last_synced_at":"2025-07-08T01:11:22.491Z","repository":{"id":115108612,"uuid":"81695287","full_name":"SleekPanther/interval-partitioning-greedy-algorithm","owner":"SleekPanther","description":"Java Implementation of the Interval Partitioning greedy algorithm","archived":false,"fork":false,"pushed_at":"2017-08-08T13:22:13.000Z","size":668,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-05T02:43:05.518Z","etag":null,"topics":["classroom","classrooms","greedy","greedy-algorithms","interval","interval-partitioning","intervals","lecture","lecture-notes","room","rooms","schedule"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SleekPanther.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-02-12T01:34:53.000Z","updated_at":"2021-10-24T14:22:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"a4de71f7-4ec5-4619-aa72-8d01b3433c02","html_url":"https://github.com/SleekPanther/interval-partitioning-greedy-algorithm","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SleekPanther/interval-partitioning-greedy-algorithm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SleekPanther%2Finterval-partitioning-greedy-algorithm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SleekPanther%2Finterval-partitioning-greedy-algorithm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SleekPanther%2Finterval-partitioning-greedy-algorithm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SleekPanther%2Finterval-partitioning-greedy-algorithm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SleekPanther","download_url":"https://codeload.github.com/SleekPanther/interval-partitioning-greedy-algorithm/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SleekPanther%2Finterval-partitioning-greedy-algorithm/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264172029,"owners_count":23567800,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["classroom","classrooms","greedy","greedy-algorithms","interval","interval-partitioning","intervals","lecture","lecture-notes","room","rooms","schedule"],"created_at":"2024-11-15T05:43:00.498Z","updated_at":"2025-07-08T01:11:22.474Z","avatar_url":"https://github.com/SleekPanther.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Java Interval Partitioning Greedy Algorithm\nJava Implementation of the Interval Partitioning greedy algorithm  \n**Given a set of lectures (jobs) with start \u0026 end times, schedule all lectures to use the fewest rooms (resources)**\n\n## Usage\n- Times are treated as integers, but converted to strings when printing output (`getTimeFromInt()` method of `Lecture` class)\n- Times are integers. 3-digits for the morning (9AM = 900), 4-digits for afternoons (10:30 = 1030)\n- Uses 24-hour clock (2:30 PM is 14:30)\n- \u0026nbsp;\n- Enter the Lectures/Jobs in `IntvlPart` constructor  \nSorted by start time later, **can be in any order**\n- Run the program to view optimal schedule\n- **Multiple optimal solutions may be found** depending on the order lectures were added in the constructor\n\n### Output\n1. Prints the room where a lecture is schedued when it is scheduled\n2. A List of all the rooms and the lectures in that room\n3. Output is printed to the screen as well as written to a file `output.txt`\n\n\n## Example Lectures (Created in Constructor)  \n![lectures](pictures/lectures.png)\n\n## Pseudocode\n\n![pseudocode](pictures/pseudocode.png)\n\n## Pseudocode\n\n![pseudocode runtime](pictures/pseudocode+runtime.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsleekpanther%2Finterval-partitioning-greedy-algorithm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsleekpanther%2Finterval-partitioning-greedy-algorithm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsleekpanther%2Finterval-partitioning-greedy-algorithm/lists"}