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

做网站网页维护手机App开发如何找友情链接

做网站网页维护手机App开发,如何找友情链接,网页设计师培训机构有吗,企业网站优化17目录 一、题目 1、题目描述 2、接口描述 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历 序列。 对位于 (row, col) 的每个结点而言,其左右子结…

目录

一、题目

1、题目描述

2、接口描述

3、原题链接

二、解题报告

1、思路分析

2、复杂度

3、代码详解


一、题目

1、题目描述

给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历 序列。

对位于 (row, col) 的每个结点而言,其左右子结点分别位于 (row + 1, col - 1) 和 (row + 1, col + 1) 。树的根结点位于 (0, 0) 。

二叉树的 垂序遍历 从最左边的列开始直到最右边的列结束,按列索引每一列上的所有结点,形成一个按出现位置从上到下排序的有序列表。如果同行同列上有多个结点,则按结点的值从小到大进行排序。

返回二叉树的 垂序遍历 序列。

2、接口描述

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:vector<vector<int>> verticalTraversal(TreeNode* root) {}
};

3、原题链接

987. 二叉树的垂序遍历


二、解题报告

1、思路分析

我们由父节点的坐标可以推出左右孩子的坐标,那么我们可以从根节点进行广搜或者深搜,推出所有节点的坐标,然后对每一列按照行坐标和节点值进行排序,记录返回值即可

思路很简单,就是一模拟题,代码或许还可以写的更优雅。

2、复杂度

时间复杂度: O(nlogn)空间复杂度:O(n)

3、代码详解

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:
#define mkp make_pair
typedef TreeNode Node;
typedef pair<int,int> PII;
map<int, vector<PII>> mp;
set<int> cols;vector<vector<int>> verticalTraversal(TreeNode* root) {if(!root) return {};mp.clear(), cols.clear();function<void(Node*, const PII&)> dfs = [&](Node* x, const PII& p){mp[p.second].emplace_back(mkp(p.first, x->val));cols.insert(p.second);if(x->left) dfs(x->left, mkp(p.first+1, p.second-1));if(x->right) dfs(x->right, mkp(p.first+1, p.second+1));};dfs(root, mkp(0, 0));vector<vector<int>> ret(cols.size());int tot = 0;for(auto x : cols){sort(mp[x].begin(), mp[x].end());for(auto& p : mp[x])ret[tot].emplace_back(p.second);tot++;}return ret;}
};

http://www.wangmingla.cn/news/155857.html

相关文章:

  • 如何保存网站上的图片不显示图片seo搜索优化网站推广排名
  • 怎么自己做游戏软件的appseo实战培训课程
  • 开发公司 张庆seo技巧
  • 传奇怎么做网站营销网站建设都是专业技术人员
  • 网站建设费用 优帮云域名备案
  • 安康服务好的网络公司合肥全网优化
  • 推广网站挣钱界首网站优化公司
  • 找人做个app需要多少钱贺州seo
  • 深圳市罗湖区网站建设seo关键词排名注册价格
  • 网站设计文章友情链接检测工具
  • 个人博客网站建设方案怎么制作自己的网站
  • 威客做网站网址提交
  • 我制作了一个网站百度网址大全官方下载
  • 网站 跳出率 多少平台运营推广
  • 做网站横幅的图片多大推广引流网站
  • asp+sql server典型网站建设案例百度手机助手网页
  • 网页截图快捷键在哪里苏州seo排名公司
  • html情人节给女朋友做网站seo关键词首页排名
  • wordpress站点营销方案设计思路
  • 网络工程师考试时间什么是搜索引擎优化
  • 合肥专业做网站的站内优化seo
  • 中小型企业网站建设旺道智能seo系统
  • 能看所有网站的浏览器品牌营销策略研究
  • 个人如何做购物网站 关于支付接口百度大搜推广和百度竞价
  • 做网站要找什么公司logo网站设计
  • 有哪些学做衣服的网站有哪些数字营销策略有哪些
  • 怎么上传网站数据库实时热榜
  • 公司页面网站设计模板公关公司是干嘛的
  • 做网站做的好的公司做推广的软件有哪些
  • 泊头做网站电话台州关键词优化服务