'commit'
This commit is contained in:
76
C++专题课程/STL基础知识/STL-1-优先队列.cpp
Normal file
76
C++专题课程/STL基础知识/STL-1-优先队列.cpp
Normal file
@@ -0,0 +1,76 @@
|
||||
#include<bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
/*
|
||||
֪ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>C++ STL <20><><EFBFBD>ȶ<EFBFBD><C8B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<EFBFBD><EFBFBD><EFBFBD>ȶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD><EFBFBD>е<EFBFBD>һ<EFBFBD>֣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>ַ<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD>ж<EFBFBD>̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
ÿ<EFBFBD>ε<EFBFBD>push<EFBFBD><EFBFBD>pop<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>ᶯ̬<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դﵽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>ڵķ<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD>洢<EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD>磬<EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD>5 3 2 4 6<><36><EFBFBD><EFBFBD>push<73><68><EFBFBD><EFBFBD><EFBFBD>ȶ<EFBFBD><C8B6><EFBFBD><EFBFBD>У<EFBFBD>
|
||||
<EFBFBD>涨˳<EFBFBD><EFBFBD>Ϊ<EFBFBD>Ӵ<EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD><EFBFBD>Ϊ6 5 4 3 2
|
||||
|
||||
<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<EFBFBD><EFBFBD><EFBFBD>
|
||||
https://www.cnblogs.com/aiguona/p/7200718.html
|
||||
* */
|
||||
struct node {
|
||||
friend bool operator<(node n1, node n2) {
|
||||
return n1.priority < n2.priority;
|
||||
}
|
||||
int priority;
|
||||
int value;
|
||||
};
|
||||
|
||||
int main() {
|
||||
const int len = 5;
|
||||
int i;
|
||||
int a[len] = {3, 5, 9, 6, 2};
|
||||
|
||||
//ʾ<><CABE>1<EFBFBD><31><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>
|
||||
//priority_queue<int, vector<int>, less<int> > qi; //<2F><EFBFBD>
|
||||
priority_queue<int> qi; //<2F><>д<EFBFBD>汾
|
||||
for (i = 0; i < len; i++)
|
||||
qi.push(a[i]);
|
||||
for (i = 0; i < len; i++) {
|
||||
cout << qi.top() << " ";
|
||||
qi.pop();
|
||||
}
|
||||
cout << endl;
|
||||
|
||||
//ʾ<><CABE>2<EFBFBD><32><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
priority_queue<int, vector<int>, greater<int> > qi2; //С<><D0A1><EFBFBD><EFBFBD>
|
||||
for (i = 0; i < len; i++)
|
||||
qi2.push(a[i]);
|
||||
for (i = 0; i < len; i++) {
|
||||
cout << qi2.top() << " ";
|
||||
qi2.pop();
|
||||
}
|
||||
cout << endl;
|
||||
|
||||
//ʾ<><CABE>3<EFBFBD><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
priority_queue<node> qn;
|
||||
node b[len];
|
||||
b[0].priority = 6;
|
||||
b[0].value = 1;
|
||||
|
||||
b[1].priority = 9;
|
||||
b[1].value = 5;
|
||||
|
||||
b[2].priority = 2;
|
||||
b[2].value = 3;
|
||||
|
||||
b[3].priority = 8;
|
||||
b[3].value = 2;
|
||||
|
||||
b[4].priority = 1;
|
||||
b[4].value = 4;
|
||||
|
||||
for (i = 0; i < len; i++)
|
||||
qn.push(b[i]);
|
||||
|
||||
cout << "<EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>" << '\t' << "ֵ" << endl;
|
||||
for (i = 0; i < len; i++) {
|
||||
cout << qn.top().priority << '\t' << qn.top().value << endl;
|
||||
qn.pop();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user