經典指數          
原因
1412
瀏覽數
0
收藏數
 

請設計一個排隊系統,能夠讓每個進入隊伍的用戶都能看到自己在隊列中所處的位置和變化,隊伍可能隨時有人加入和退出;當有人退出影響到用戶的位置排名時需要及時反饋到用戶

     舉報   糾錯  
該題目由題來君提供于 2015-10-08 16:48
 
切換
1 個答案

設計一個鏈式的隊列,由于隊列頻繁的有人來和走(插入和刪除),所以鏈式隊列的效率最好,隊列中存放的元素是一個對象和隊長,這個對象包括了

Person、location屬性,Person是排隊的用戶,而location是用戶的位置,當有用戶進來的時候,只能從隊尾進入,此時將他的

Person對象加入,其location等于隊長加1,并且隊長加1;如果有用戶退出(任何位置),找到退出的用戶的前一個用戶,刪除退出用戶的結點, 并且其后的其他用戶的location-1,隊長也-1.

為了更快的找到退出的用戶,可以考慮用HashMap存儲用戶的key:Hash值,val:鏈表結點的位置。

舉報   題來君 · 2015-12-29 23:29
 
切換
撰寫答案
广西快三结果控 山西11选五 今天6十 开奖号码 最大的股票配资公司 5分彩骗局-揭露骗局真相 湖南福彩快乐十分同步走势图 广西十一选五线上购买 pc蛋蛋幸运28余数算法 体彩辽宁11选五开奖结果 甘肃体育彩票11选5开奖 天津快乐十分兑奖期限