scheduler

package
v0.0.0-...-0cc96cf Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2024 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Schedule

type Schedule struct {
	Students []*imp.Student
	Sections []*imp.Section
	Score    float64
}

type Scheduler

type Scheduler struct {
	DataLoader          *data.DataLoader
	CourseNameToSection map[string]*imp.Section
	BestSchedule        *Schedule
}

func NewScheduler

func NewScheduler() *Scheduler

func (*Scheduler) AssignStudentsToSections

func (s *Scheduler) AssignStudentsToSections()

func (*Scheduler) ClearSections

func (s *Scheduler) ClearSections()

func (*Scheduler) CourseNameToSectionToSlice

func (s *Scheduler) CourseNameToSectionToSlice() []*imp.Section

func (*Scheduler) ExtractByGradeAndShuffle

func (s *Scheduler) ExtractByGradeAndShuffle()

func (*Scheduler) FindFirstAvailableSectionForStudent

func (s *Scheduler) FindFirstAvailableSectionForStudent(student *imp.Student, timeSlot string) *imp.Section

func (*Scheduler) GetFirstAvailableSectionWithoutRequest

func (s *Scheduler) GetFirstAvailableSectionWithoutRequest(timeSlot string) *imp.Section

func (*Scheduler) Run

func (s *Scheduler) Run(numIterations int) *Schedule

func (*Scheduler) ScoreSchedule

func (s *Scheduler) ScoreSchedule() float64

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL