最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

磁盤調(diào)度SSTF(最短尋道時間優(yōu)先算法)python

2023-06-07 14:29 作者:真是累的很啊  | 我要投稿

python相對于c/c++來說對于內(nèi)存要求太高,它的運行速度也更慢,所以關(guān)于計算機底層算法還是用c/c++實現(xiàn)最好,用python最多是練習(xí)一下算法的邏輯,肯定是不能實際應(yīng)用的



list1=list(map(int,input().split()))

list_seek=list(map(int,input().split()))
list_seek=sorted(list_seek)# 對數(shù)據(jù)排序,方便尋找離得最近的數(shù)
def Shortest_Seek(list_seek_sorted,track):
??? for i in range(len(list_seek)): # 遍歷嘗試尋找離track最近的數(shù)
??????? if list_seek_sorted[i]>=track: # 尋找大于track的且最近的數(shù)(找到了說明這個數(shù)比track大且離得最近,這個數(shù)之前的那個數(shù)筆track小且離得最近)
??????????? if i>=1: # 如果這個數(shù)不是列表中的第一個(如果是第一個說明左邊沒有比track小的數(shù)了,所以就沒必要和左右兩邊的數(shù)比較了)
??????????????? if list_seek_sorted[i]-track>=track-list_seek_sorted[i-1]: #? 左邊的數(shù)離track近。這里注意>=,當(dāng)兩邊一樣距離的時候選擇小的
??????????????????? next_track=list_seek_sorted.pop(i-1)
??????????????????? return next_track,list_seek_sorted
??????????????? else: #右邊的數(shù)(也就是當(dāng)前i所在位置的數(shù))離track近
??????????????????? next_track=list_seek_sorted.pop(i)
??????????????????? return next_track,list_seek_sorted
??????????? else: # 如果是第一個數(shù)就直接輸出,因為左邊沒數(shù)了
??????????????????? next_track=list_seek_sorted.pop(i)
??????????????????? return next_track,list_seek_sorted
??????????? break # 找到一個大于track且滿足條件的數(shù)就退出循環(huán)
??? else: # 如果遍歷完還沒有找到,說明track比所有數(shù)都大,所以輸出列表中最后一個,因為它離track最近
??????? next_track=list_seek_sorted.pop(-1)
??????? return next_track,list_seek_sorted


# 初始化
result=0
now_track=list1[1] #初始磁頭位置
next_track,list_seek=Shortest_Seek(list_seek,now_track)# 獲取下一個要到達(dá)磁道位置
result+=abs(next_track-now_track) # 計算差值
now_track=next_track # 磁頭移動至下一個磁道


# 循環(huán)獲取最近的磁道,記錄差值并移動
while list_seek:
??? next_track,list_seek=Shortest_Seek(list_seek,now_track)
??? result+=abs(next_track-now_track)
??? now_track=next_track
print(result)




磁盤調(diào)度SSTF(最短尋道時間優(yōu)先算法)python的評論 (共 條)

分享到微博請遵守國家法律
绿春县| 繁昌县| 黎平县| 黑龙江省| 肇州县| 四子王旗| 宁陕县| 嘉兴市| 六枝特区| 珠海市| 金坛市| 上虞市| 布拖县| 大姚县| 凤翔县| 封开县| 额尔古纳市| 渭南市| 隆尧县| 库伦旗| 贵州省| 锡林郭勒盟| 策勒县| 广灵县| 石屏县| 永昌县| 建湖县| 新化县| 安多县| 会昌县| 昌乐县| 绥德县| 长治市| 阿克陶县| 大化| 金门县| 孝昌县| 嫩江县| 双江| 遵义县| 陇川县|