第三頁 佇列學習

2022-03-03 08:22:46 字數 2470 閱讀 9077

佇列是遵循fifo(first in first out,先進先出,也稱為先來先服務)原則的一組有序的項 佇列在尾部新增新元素,並從頂部移除元素。最新新增的元素必須排在佇列的末尾。

 enqueue(element(s)):向佇列尾部新增乙個(或多個)新的項。

 dequeue():移除佇列的第一(即排在佇列最前面的)項,並返回被移除的元素。

 front():返回佇列中第乙個元素——最先被新增,也將是最先被移除的元素。佇列不

做任何變動(不移除元素,只返回元素資訊——與stack類的peek方法非常類似)。

 isempty():如果佇列中不包含任何元素,返回true,否則返回false。

 size():返回佇列包含的元素個數,與陣列的length屬性類似。

//

建立乙個自己的佇列

function myqueen() ;

this.dequeue =function () ;

this.front =function () ;

this.isempty =function () ;

this.clear =function () ;

this.size =function () ;

this.print =function () ;

}var queue = new

myqueen();

console.log(queue.isempty());

//輸出true

//向佇列新增

queue.enqueue("

john");

queue.enqueue(

"jack");

queue.enqueue(

"camila");

queue.print();

//佇列陣列轉換字串

console.log(queue.size()); //

輸出3 console.log(queue.isempty()); //

輸出false

queue.dequeue();//

移除第乙個進來的 然後下面輸出jack,camila

queue.print();

優先佇列:元素的新增和移除是基於優先順序的。乙個現實的例子就是機場登機的順序。頭等艙和商務艙乘客的優先順序要高於經濟艙乘客。在有些國家,老年人和孕婦(或帶小孩的婦女)登機時也享有高於其他乘客的優先順序。

//

優先佇列

function priorityqueue() ;

//: 要向priorityqueue新增元素,需要建立乙個特殊的元素這個元素包含了要新增到佇列的元素(它可以是任意型別及其在佇列中的優先順序。

function queueelement(element, priority) 建立新元素

this.element =element;

this.priority = priority;//

表示優先順序

}

this.enqueue = function (element, priority) 如果隊列為空 新增元素

items.push(queueelement);

} else 一旦找到priority值更大的元素,就插入新元素

//陣列的splice()的方法 在i索引位置開始,刪除後面0個元素,插入元素

added = true

;

break; //

終止for迴圈

} }

if (!added) 如果要新增元素的priority值大於任何已有的元素,把它新增到佇列的末尾就行了

items.push(queueelement);}}

this.print =function ()

str += items[0].element + "

_" + items[0

].priority ;

}console.log(str);

};};

//其他方法和預設的queue實現相同

}

var priorityqueue = new

priorityqueue();

priorityqueue.enqueue(

"john

", 2); //

[john,2]

priorityqueue.enqueue("

jack

", 1);//

[jack,1],[john,2]

priorityqueue.enqueue("

camila

", 1);//

[jack,1],[camila,1],[john,2]

priorityqueue.print();//

輸出 jack_1

C語言第三頁筆記

61.對乙個p進製的數,如果要轉換為q進製,需要分為兩步 第一步先將p進製數轉換為十進位制 數,第二步再將十進位制數轉換為q進製數 62.雜湊 將元素通過乙個函式轉換為整數,使得該整數可以盡量唯一地代表這個元素。其中把這 個函式稱為雜湊函式h。63.除留餘數法是指把key除以乙個數mod得到的餘數作...

Head First C 中文版 第三頁

c 和visual studio ide讓很多事情變得簡單 使用c 和vs,你就得到了所有那些優秀的特性,無需做任何額外的工作。這些特性使得你可以 快速構建應用。用c 建立程式是小菜一碟。c 好學而且強大,vs又可以自動為你完成很多任務作。你可以把俗氣的 交給vs去完成,自己把精力集中在要完成的事上...

unittest介面自動化測試第三頁

封裝日誌使用方法 import logging 日誌位址引數loginfopath loginfopath r d pycharm pycharm pure book pycharmprojects untetest inte ce log info logs.txt class logprint ...