簡單資料結構模板彙總
阿新 • • 發佈:2021-07-09
不包括字串和圖論內容。
某種意義上算是“簡單”資料結構……
程式碼壓行警告qwq
如果存在與資料結構有關的經典演算法,也會予以列出。
1. 單調佇列
``` ### 2. 單調棧 ### 3. 對頂堆 ### 4. 並查集 路徑壓縮+按秩合併,**近似**O(n) ```cpp const int maxn=100010; int n,fa[maxn],siz[maxn]; void init(int xx){for(int i=1;i<=xx;i++){fa[i]=i;siz[i]=1;}} int find(int xx){return fa[xx]==xx?xx:fa[xx]=find(fa[xx]);} int query(int xx,int yy){return find(xx)==find(yy);} void merge(int xx,int yy) { int fx=find(xx),fy=find(yy); if(fx==fy)return; if(siz[fx]<siz[fy]){fa[fx]=fy;siz[fy]+=siz[fx];fa[xx]=fy;} else{fa[fy]=fx;siz[fx]+=siz[fy];fa[yy]=fx;} }