当前位置: 首页 > news >正文

餐饮公司的网站建设semiconductor

餐饮公司的网站建设,semiconductor,网站开发工资低,做网站需多少钱作者:指针不指南吗 专栏:Acwing 蓝桥集训每日一题 🐾或许会很慢,但是不可以停下来🐾 文章目录1.树的遍历2.递归求阶乘3.求斐波那契数列1.树的遍历 一个二叉树,树中每个节点的权值互不相同。 现在给出它的后…

作者:指针不指南吗
专栏:Acwing 蓝桥集训每日一题

🐾或许会很慢,但是不可以停下来🐾

文章目录

  • 1.树的遍历
  • 2.递归求阶乘
  • 3.求斐波那契数列

1.树的遍历

一个二叉树,树中每个节点的权值互不相同。

现在给出它的后序遍历和中序遍历,请你输出它的层序遍历。

输入格式

第一行包含整数 N,表示二叉树的节点数。

第二行包含 N 个整数,表示二叉树的后序遍历。

第三行包含 N 个整数,表示二叉树的中序遍历。

输出格式

输出一行 N 个整数,表示二叉树的层序遍历。

数据范围

1≤N≤30,
官方并未给出各节点权值的取值范围,为方便起见,在本网站范围取为 1∼N。

输入样例:

7
2 3 1 5 7 6 4
1 2 3 4 5 6 7

输出样例:

4 1 6 3 5 7 2

  1. 知识点
  • 层序遍历:从上往下,从左往右一层一层遍历;

  • 中序遍历:先遍历左节点,再遍历根节点,最后遍历右节点;

  • 前序遍历:先遍历根节点,再遍历左节点,最后遍历右节点;

  • 后序遍历: 先遍历左节点,再遍历右节点,最后遍历根节点;

  1. 推导树的原型过程

在这里插入图片描述

​ (1) 首先根据后序遍历的最后一个数,来确定根节点,在中序遍历中找到相同的数即根节点;

​ (2) 由根节点在中序遍历中的位置,我们可以推出来,左子树长度,右子树长度,对应的在后序遍历中找到;

​ (3) 再根据后序遍历中左子树的最后一个,即左子树的根节点,…,递归

  • 最后需要层序遍历:

    我们可以先开一个vector,第一层放在 vector[ 0 ] 里面,第二层放在vector[1]里面…

  1. 代码实现

    #include<bits/stdc++.h>
    using namespace std;const int N=35;
    int a[N],b[N],p[N];  
    int n;vector<int> level[N]; //每一层用一个vector来存数值,因为我们要层序遍历输出;void build(int al,int ar,int bl,int br,int d) //d表示树的层数;
    {if(al>ar) return ;   // 当al>ar时,说明,已经递归到最后一个子树;int val=a[ar];  //每个子树的根节点就是后续遍历的最后一个数字,用val存下来;level[d].push_back(val);  //把每个根节点都存在 对应每一层的数组中去,用于层序遍历输出;int k=p[val];  //k来表示根节点在中序遍历中的位置;build(al,k-1-bl+al ,bl,k-1,d+1);  //递归左子树,下一层d+1;build(k-bl+al,ar-1,k+1,br,d+1);   //递归右子树
    }int main()
    {cin>>n;for(int i=0;i<n;i++) cin>>a[i];  //a表示后序遍历;for(int i=0;i<n;i++) cin>>b[i];  //b表示中序遍历;for(int i=0;i<n;i++) p[b[i]]=i;  //因为要确定中序遍历中左右子序的位置,所以用p来存中序遍历中每个数字的位置;build(0,n-1,0,n-1,0);for(int i=0;i<n;i++)   //把每个level里面的数据输出出来for(int x:level[i])cout<<x<<' ';return 0;
    }
    

    补充

    build的函数参数的表示如下图:

    后序遍历中左子树的ar 的计算,列个方程即可,如下图:

2.递归求阶乘

请使用递归的方式求 n 的阶乘。

输入格式

共一行,包含一个整数 n。

输出格式

共一行,包含一个整数,表示 n 的阶乘的值。

数据范围

1≤n≤10

输入样例:

3

输出样例:

6
  • 代码实现

    #include<bits/stdc++.h>
    using namespace std;int fac(int n)
    {if(n==1) return 1;else return fac(n-1)*n;
    }int main()
    {int n;cin>>n;int k=fac(n);cout<<k;return 0;} 
    

3.求斐波那契数列

请使用递归的方式求斐波那契数列的第 n 项,下标从1开始。

斐波那契数列:1,1,2,3,5…这个数列从第 3 项开始,每一项都等于前两项之和

输入格式

共一行,包含整数 n。

输出格式

共一行,包含一个整数,表示斐波那契数列的第 n� 项。

数据范围

1≤n≤30

输入样例:

4

输出样例:

3
  • 代码实现

    #include<bits/stdc++.h>
    using namespace std;int fun(int n)
    {if(n<=2) return 1;else return fun(n-1)+fun(n-2);
    }int main()
    {int n;cin>>n;cout<<fun(n);return 0;
    }
    

虽然跟着y总学习,但是简单题也要回顾
Alt

http://www.zhongyajixie.com/news/39039.html

相关文章:

  • 做网站用了别人公司的图片可以吗东莞百度搜索网站排名
  • 长春求推荐好的网站优化推广国际婚恋网站排名
  • 电子商务网站建设与管理第二版答案seo资源咨询
  • 阿里云网站全部清空怎么做如何做好产品网络推广
  • 珠海网站建设 骏域网站百度app登录
  • 新建网站如何推广广东seo推广公司
  • 网站公安备案网站的推广方式有哪些
  • 网站注册信息查询推广普通话手抄报内容大全
  • 建立用模板建立网站论坛平台
  • 有个网站301什么智推教育seo课程
  • 53建筑网官网网站怎么优化seo
  • 医疗网站建设流程排名优化网站建设
  • php网站开发实训心得快速网站轻松排名哪家好
  • 十大纯净系统网站长春关键词优化平台
  • 郑州工作汤阴县seo快速排名有哪家好
  • 做网站用com还是cn好东台网络推广
  • 如何用eclipse做网站站长之家域名查询排行
  • 网站建设发展方向怎么写深圳seo优化
  • 企业网站建设版本安卓手机优化软件哪个好
  • 在网站后台设置wap模板目录代写文案的软件
  • 山东省政府采购网 网站建设 招标刚刚发生了一件大事
  • 郑州专业的网站建设公司google关键词排名优化
  • 容易导致网站作弊的几个嫌疑免费百度seo引流
  • 漫画网站源码青岛seo代理计费
  • 大型网站域名so导航 抖音
  • 做招聘的网站有哪些内容百度竞价广告点击器
  • 大连网站推广价格优化系统
  • 金融公司网站建设hao123网址之家官网
  • 网站做防劫持百度竞价代运营外包
  • 网站的模糊搜索怎么做seo搜索排名优化