Question

What will be the output of the following code when implementing the SCAN I/O scheduling algorithm? def scan(requests, head, direction):     seek_sequence = []     distance = 0     cur_track = 0     if direction == "left":         requests.sort(reverse=True)     else:         requests.sort()     for track in requests:         if cur_track < track:             seek_sequence.append(cur_track)             distance += abs(track - cur_track)             cur_track = track     return seek_sequence, distance requests = [98, 180, 37, 122, 14, 124, 65, 67] head = 50 direction = "right" seek_sequence, total_distance = scan(requests, head, direction) print(seek_sequence) print(total_distance)

A [50, 14, 37, 65, 67, 98, 122, 124, 180]
B [50, 14, 37, 67, 65, 98, 124, 122, 180]
C [50, 14, 37, 67, 65, 122, 124, 180]
D [50, 37, 65, 67, 98, 180]
E [50, 67, 65, 98, 122, 124, 180]
Practice Next

Relevant for Exams:

Hey! Ask a query