树
阿斯顿阿瑟东
这个作者很懒,什么都没留下…
展开
-
线段树简介
第三天 线段树主要用于解决求区间和、区间修改、区间最值的问题。 线段树模板 #include<bits/stdc++.h> using namespace std; struct node { int l,r,w,lazy;//tree的l,r表示数组区间[l,r],w表示[l,r]区间和 }tree[400001]; //lazy!=0是加值,lazy!=-1是改值 void build(int v,int l,int r)//建树,v表示tree里第v个结点,tree原创 2021-01-07 22:48:33 · 75 阅读 · 0 评论 -
堆的建立,及堆排序
第二天 堆的建立 #include<iostream> using namespace std; const int N = 1000; int n,a[N]; void sift(int a[],int k,int n)//k是要调整数值的编号,调整范围是从K到N { int i = k; int j = 2*i; while(j<n) { if(j<n && a[j+1]>a[j]) j++; if(a[i]>a[j]) break;原创 2021-01-06 20:51:49 · 110 阅读 · 0 评论