c 學習之STL中排序演算法multiset

2021-08-21 20:34:45 字數 1826 閱讀 8531

multisetst st裡面儲存著t型別的資料,能夠自動排序

multiset::iterator p是迭代器,相當於指標

st.begin() 返回值為 multiset::iterator,是指向st中頭乙個元素的迭代器

st.end() 返回值為 multiset::iterator,是指向st中最後乙個元素的迭代器

multisetst st裡面儲存著t型別的資料,能夠根據需要排序

#include

#include

#include// 使用multiset和set需要此標頭檔案

using

namespace

std;

int main();

for(int i= 0; i<11; i++)

multiset

::iterator i; //迭代器,近似於指標

for(i = st.begin() ; i != st.end() ; ++i)

cout

<"find number:";

int look = 10;

// cin >> look ;

i= st.find(look); // 查詢數字 look

if(i == st.end())

multisetst st裡面儲存著t型別的資料,能夠根據需要排序

#include

#include

#include

using

namespace

std;

struct rule1

}; struct student;

struct rule2

}; int main() ;

for(int i=0 ; i<10 ; i++)

multiset

>::iterator i;

for(i= st.begin() ; i!= st.end();i++)

cout

<< *i << ",";

cout

<< endl;

multiset

st2; //按個位大小排列

for(int i=0 ; i<10 ; i++)

multiset

::iterator p;

for(p = st2.begin();p!= st2.end();p++)

cout

<< *p <<",";

cout

<< endl;

p =st.find(78);

if(p != st.end())

cout

<< *p cout

<< "not fount!!!"

<< endl;

multiset

st3; //自定義結構體排序

student students =,,

,};for(int i=0;i<4;i++)

st3.insert(students[i]);

multiset

::iterator p1;

for(p1 = st3.begin();p1 != st3.end();p1++)

cout

<< p1->gpa <<" "

<< p1->name << " "

<< p1->id << endl;

return

0;}

C語言中排序演算法

選擇排序 拿到其中乙個元素的值依次和其他元素進行比較,完全比較完一次之後,最大或者最小的值出現在第0位.氣泡排序 用兩個相鄰的元素進行比較,每完全比較完依次,最大或者最小的值出現在末尾.例 intnums 5 int length sizeof nums sizeof nums 0 for int ...

STL之排序演算法

1.merge 以下是排序和通用演算法 提供元素排序策略 merge 合併兩個有序序列,存放到另乙個序列。例如 vecinta,vecintb,vecintc是用vector宣告的容器,vecinta已包含1,3,5,7,9元素,vecintb已包含2,4,6,8元素 vecintc.resize ...

STL之排序演算法

以下是排序和通用演算法 提供元素排序策略 merge 合併兩個有序序列,存放到另乙個序列。例如 vecinta,vecintb,vecintc是用vector宣告的容器,vecinta已包含1,3,5,7,9元素,vecintb已包含2,4,6,8元 vecintc.resize 9 擴大容量 me...