日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

multiset底层原理,红黑树原理

發布時間:2024/1/1 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 multiset底层原理,红黑树原理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

multiset 底層實現原理

mulitiset 默認采用 less ,即由小到大的順序排序

平衡二插搜索樹

//AVL樹 typedef struct TreeNode {struct TreeNode *parent;struct TreeNode *left;struct TreeNode *right;int key; //維持有序int data; //節點爾達斯信息//bool color 紅黑樹當中還具有color信息 } TreeNode;void inorder (TreeNode *node) {if (node != nullptr) {inorder(node->left);printf("k:%d v:%d", node->key, node->data);inorder(node->right);} }

STL中紅黑樹的實現

記錄的信息:a. 根節點位置;b. 最左側節點位置;c. 最右側節點位置。迭代器采用中序遍歷的方式進行遍歷。

類比 set、multiset、map、multimap

  • set和multiset會根據特定的排序準則自動將元素排序,set中元素不允許重復,multiset可以重復.
  • map和multimap將key和value組成的pair作為元素,根據key的排序準則自動將元素排序(因為紅黑樹也是二叉搜索樹,所以map默認是按key排序的),map中元素的key不允許重復,multimap可以重復 。
  • #include <set> #include <map> #include <iostream>using namespace std;int main() {set<int> s;multiset<int> ms;map<int,int> m;multimap<int,int> mm;return 0; }

    充電站
    推薦一個零聲學院免費公開課程,個人覺得老師講得不錯,分享給大家:Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒體,CDN,P2P,K8S,Docker,TCP/IP,協程,DPDK等技術內容,立即學習

    總結

    以上是生活随笔為你收集整理的multiset底层原理,红黑树原理的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。