欢迎使用本站,预祝练习时长两年半的选手们到成功! [本模块信息来自tem/def/head]

class21 lcy 树

时间:2024-08-15 09:11 作者:admin 点击:
容器适配器:stack栈,queue队列,priority_queue优先队列 stack:先进后出,后进先出,有栈顶和栈底,存和取通过栈顶完成 stackint s; s.push(5);//存5 入栈 s.push(3);//存3 s.push(2);//存2 while(!s.empt

容器适配器:stack栈,queue队列,priority_queue优先队列

stack:先进后出,后进先出,有栈顶和栈底,存和取通过栈顶完成

stack<int> s;

s.push(5);//存5 入栈

s.push(3);//存3

s.push(2);//存2

while(!s.empty()){//只要s不为空,就执行循环

   cout<<s.top();//输出栈顶元素 2 3 5

   s.pop();//移除栈顶元素 出栈

}


queue:先进先出,后进后出,有队头和队尾,存通过尾完成,取通过头完成

queue<int> q;

q.push(5);//存数据 入队

q.push(3);

q.push(2);

while(!q.empty()){//只要队不为空,就执行循环操作

   cout<<q.front();//5 3 2 获取队头

   q.pop();//出队

}


priority_queue:大的先出,大致有序,有队顶

priority_queue<int> q;

q.push(5);

q.push(8);

q.push(3);

while(!q.empty()){

   cout<<q.top();//输出队顶元素 8 5 3

   q.pop();

}


序列容器:5种线型结构,存储顺序与存入顺序有关

   array,deque,vector 物理连续

   forward_list,list 指针连接


关联容器:2类树型结构,存储顺序与存入的值大小有关

   set,map:自动排序,自动去重


容器适配器:3类 有固定的存取规则

   stack,queue 线型

   priority_queue 树型


树的概念(图)

创建树的代码

1、指针存树

struct node{

   int num;

   vector<node*> v;

};

2、数组存树(父节点唯一)

int fat[1000]={};

int a,b;

while(边的数量){

   cin>>a>>b;//a是b的父节点

   fat[b]=a;

}

3、邻接表

vector<list<int>> vl;






二叉树->概念->代码

完全二叉树->概念->代码

二叉堆->概念->代码

哈夫曼树->概念->代码

二叉搜索树->概念->代码



(责任编辑:admin)
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%