[發(fā)明專(zhuān)利]一種優(yōu)先級(jí)隊(duì)列設(shè)計(jì)方法及優(yōu)先級(jí)隊(duì)列設(shè)計(jì)裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201510427912.1 | 申請(qǐng)日: | 2015-07-20 |
| 公開(kāi)(公告)號(hào): | CN104965686B | 公開(kāi)(公告)日: | 2019-01-22 |
| 發(fā)明(設(shè)計(jì))人: | 潘洪安 | 申請(qǐng)(專(zhuān)利權(quán))人: | 北京金山安全軟件有限公司 |
| 主分類(lèi)號(hào): | G06F7/76 | 分類(lèi)號(hào): | G06F7/76 |
| 代理公司: | 北京市廣友專(zhuān)利事務(wù)所有限責(zé)任公司 11237 | 代理人: | 祁獻(xiàn)民 |
| 地址: | 100085 北*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 優(yōu)先級(jí) 隊(duì)列 設(shè)計(jì) 方法 裝置 | ||
1.一種優(yōu)先級(jí)隊(duì)列設(shè)計(jì)方法,其特征在于,該方法包括:
獲取待置于優(yōu)先級(jí)隊(duì)列中的各元素的優(yōu)先級(jí)級(jí)別序列;
以得到的優(yōu)先級(jí)級(jí)別序列構(gòu)建優(yōu)先級(jí)隊(duì)列,優(yōu)先級(jí)級(jí)別序列中的每一級(jí)優(yōu)先級(jí)級(jí)別對(duì)應(yīng)構(gòu)建的所述優(yōu)先級(jí)隊(duì)列中的一列元素;
為構(gòu)建的所述優(yōu)先級(jí)隊(duì)列中的列元素設(shè)置相應(yīng)的優(yōu)先級(jí)級(jí)別索引,并使設(shè)置的所述優(yōu)先級(jí)級(jí)別索引映射優(yōu)先級(jí)級(jí)別鏈表,每一列元素映射一優(yōu)先級(jí)級(jí)別鏈表;
從所述待置于優(yōu)先級(jí)隊(duì)列中的各元素中,選取相同優(yōu)先級(jí)級(jí)別的元素,按照先進(jìn)先出的方式,置于該優(yōu)先級(jí)級(jí)別對(duì)應(yīng)的優(yōu)先級(jí)級(jí)別鏈表中,以使所述優(yōu)先級(jí)級(jí)別鏈表存儲(chǔ)具有該優(yōu)先級(jí)級(jí)別的所有元素;
所述方法進(jìn)一步包括:
在所述優(yōu)先級(jí)隊(duì)列的隊(duì)頭或隊(duì)尾或隊(duì)中,預(yù)留預(yù)定數(shù)量的空位以擴(kuò)展構(gòu)建的所述優(yōu)先級(jí)隊(duì)列,用以添加與所述優(yōu)先級(jí)隊(duì)列未包含的優(yōu)先級(jí)級(jí)別;
在構(gòu)建的優(yōu)先級(jí)隊(duì)列中刪除隊(duì)頭元素;
所述在構(gòu)建的優(yōu)先級(jí)隊(duì)列中刪除隊(duì)頭元素包括:
遍歷優(yōu)先級(jí)級(jí)別索引,若所述優(yōu)先級(jí)級(jí)別索引對(duì)應(yīng)的優(yōu)先級(jí)級(jí)別鏈表的頭元素與所述隊(duì)頭元素相同,則刪除所述頭元素;
所述遍歷優(yōu)先級(jí)級(jí)別索引,若所述優(yōu)先級(jí)級(jí)別索引對(duì)應(yīng)的優(yōu)先級(jí)級(jí)別鏈表的頭元素與所述隊(duì)頭元素相同,則刪除所述頭元素具體包括:
A21,設(shè)置i=0;
A22,查詢(xún)優(yōu)先級(jí)隊(duì)列中第i個(gè)列元素對(duì)應(yīng)的優(yōu)先級(jí)級(jí)別索引映射的優(yōu)先級(jí)級(jí)別鏈表中的隊(duì)頭列元素是否為待刪除隊(duì)頭元素,如果是,執(zhí)行步驟A23,否則,執(zhí)行步驟A24;
A23,提取優(yōu)先級(jí)級(jí)別鏈表中的隊(duì)頭列元素并刪除,結(jié)束更新流程;
A24,判斷i是否為所述優(yōu)先級(jí)隊(duì)列中包含的列元素?cái)?shù),如果是,結(jié)束更新流程,如果否,i=i+1,返回執(zhí)行步驟A22。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法進(jìn)一步包括:
在構(gòu)建的優(yōu)先級(jí)隊(duì)列中插入具備優(yōu)先級(jí)級(jí)別的元素。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述在構(gòu)建的優(yōu)先級(jí)隊(duì)列中插入具備優(yōu)先級(jí)級(jí)別的元素包括:
獲取該待插入元素的優(yōu)先級(jí)級(jí)別;
查詢(xún)優(yōu)先級(jí)隊(duì)列,若找到獲取的優(yōu)先級(jí)級(jí)別對(duì)應(yīng)的列元素;
獲取所述找到的列元素對(duì)應(yīng)的優(yōu)先級(jí)級(jí)別索引映射的優(yōu)先級(jí)級(jí)別鏈表;
將待插入元素插入獲取的所述優(yōu)先級(jí)級(jí)別鏈表的表尾。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,還包括:
獲取該待插入元素的優(yōu)先級(jí)級(jí)別;
查詢(xún)優(yōu)先級(jí)隊(duì)列,若沒(méi)有找到獲取的優(yōu)先級(jí)級(jí)別對(duì)應(yīng)的列元素;
在優(yōu)先級(jí)隊(duì)列中,找到與獲取的優(yōu)先級(jí)級(jí)別前后相鄰的兩列元素;
在所述相鄰的兩列元素中插入新列元素,為所述新列元素分配相應(yīng)的優(yōu)先級(jí)級(jí)別索引,并使分配的所述優(yōu)先級(jí)級(jí)別索引映射優(yōu)先級(jí)級(jí)別鏈表;
將待插入元素插入所述優(yōu)先級(jí)級(jí)別鏈表的表頭。
5.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述待置于優(yōu)先級(jí)隊(duì)列中的每一元素對(duì)應(yīng)有一優(yōu)先級(jí)級(jí)別,每一優(yōu)先級(jí)級(jí)別對(duì)應(yīng)一個(gè)或多個(gè)所述待置于優(yōu)先級(jí)隊(duì)列中的元素,所述優(yōu)先級(jí)隊(duì)列中的每一列元素對(duì)應(yīng)設(shè)置有一個(gè)或多個(gè)優(yōu)先級(jí)級(jí)別索引,每一所述優(yōu)先級(jí)級(jí)別索引映射一優(yōu)先級(jí)級(jí)別鏈表。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于北京金山安全軟件有限公司,未經(jīng)北京金山安全軟件有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/201510427912.1/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F7-00 通過(guò)待處理的數(shù)據(jù)的指令或內(nèi)容進(jìn)行運(yùn)算的數(shù)據(jù)處理的方法或裝置
G06F7-02 .比較數(shù)字值的
G06F7-06 .將單個(gè)記錄載體上的數(shù)據(jù)進(jìn)行排序、選擇、合并或比較的裝置
G06F7-22 .用于排序或合并在連續(xù)記錄載體
G06F7-38 .只利用數(shù)制表示,例如利用二進(jìn)制、三進(jìn)制、十進(jìn)制表示來(lái)完成計(jì)算的方法或裝置
G06F7-58 .隨機(jī)數(shù)或偽隨機(jī)數(shù)發(fā)生器
- 仲裁器電路
- 轉(zhuǎn)發(fā)報(bào)文的方法和網(wǎng)絡(luò)設(shè)備
- 一種寬帶碼分多址系統(tǒng)中優(yōu)先級(jí)的配置方法
- 處理優(yōu)先級(jí)的提高方法、裝置及系統(tǒng)
- 差分串行通信鏈路中的多優(yōu)先級(jí)通信
- 高效的優(yōu)先級(jí)感知線(xiàn)程調(diào)度
- 業(yè)務(wù)請(qǐng)求的響應(yīng)方法和裝置
- 一種優(yōu)先級(jí)隊(duì)列設(shè)計(jì)方法及優(yōu)先級(jí)隊(duì)列設(shè)計(jì)裝置
- 一種IO調(diào)度方法、裝置和設(shè)備
- 線(xiàn)程優(yōu)先級(jí)調(diào)整方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 隊(duì)列調(diào)度系統(tǒng)及方法
- 一種從多隊(duì)列節(jié)點(diǎn)獲取消息的方法及系統(tǒng)
- 隊(duì)列請(qǐng)求處理方法和裝置
- 一種隊(duì)列清空方法以及相關(guān)設(shè)備
- 一種基于Linux通用塊層多隊(duì)列的優(yōu)化系統(tǒng)及方法
- 一種分離存儲(chǔ)的隊(duì)列實(shí)現(xiàn)方法及裝置
- 一種數(shù)據(jù)處理方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種接口擁塞時(shí)延的計(jì)算方法及裝置
- 一種報(bào)文調(diào)度方法及裝置
- RDMA網(wǎng)絡(luò)下的網(wǎng)卡隊(duì)列創(chuàng)建方法以及裝置
- 針織設(shè)計(jì)裝置和設(shè)計(jì)方法、設(shè)計(jì)程序
- 燈具(設(shè)計(jì)1?設(shè)計(jì)3)
- 頭燈(設(shè)計(jì)1?設(shè)計(jì)2?設(shè)計(jì)3)
- LED透鏡(設(shè)計(jì)1、設(shè)計(jì)2、設(shè)計(jì)3)
- 設(shè)計(jì)用圖形設(shè)計(jì)桌
- 手機(jī)殼(設(shè)計(jì)1設(shè)計(jì)2設(shè)計(jì)3設(shè)計(jì)4)
- 機(jī)床鉆夾頭(設(shè)計(jì)1設(shè)計(jì)2設(shè)計(jì)3設(shè)計(jì)4)
- 吹風(fēng)機(jī)支架(設(shè)計(jì)1設(shè)計(jì)2設(shè)計(jì)3設(shè)計(jì)4)
- 設(shè)計(jì)桌(平面設(shè)計(jì))
- 設(shè)計(jì)臺(tái)(雕塑設(shè)計(jì)用)
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線(xiàn)程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





