LeetCode 1104. 二叉树寻路(数学位运算)

1. 题目

在一棵无限的二叉树上,每个节点都有两个子节点,树中的节点 逐行 依次按 “之” 字形进行标记。

如下图所示,在奇数行(即,第一行、第三行、第五行……)中,按从左到右的顺序进行标记;

而偶数行(即,第二行、第四行、第六行……)中,按从右到左的顺序进行标记。

在这里插入图片描述

给你树上某一个节点的标号 label,请你返回从根节点到该标号为 label 节点的路径,该路径是由途经的节点标号所组成的。

示例 1:
输入:label = 14
输出:[1,3,4,14]示例 2:
输入:label = 26
输出:[1,2,6,10,26]提示:
1 <= label <= 10^6

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/path-in-zigzag-labelled-binary-tree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 找规律

在这里插入图片描述

  • 每行数的范围是已知的 [2n,2n+1−1][2^n,2^{n+1}-1][2n,2n+11], 且是等差数列(对称位置之和都相等)
  • num上一个的数是num/2的对称位置的数
class Solution {
public:vector<int> pathInZigZagTree(int label) {vector<int> ans;int n = 0;while(pow(2,n) <= label)n++;while(n--){ans.push_back(label);label = 3*pow(2,n-1)-1 - (label>>1);//左右边界和-label/2}reverse(ans.begin(),ans.end());return ans;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/478054.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

构建基于Python的CI/CD流水线

构建基于Python的CI/CD流水线

再介绍一篇最新的Contrastive Self-supervised Learning综述论文

文 | 对白源 | 对白的算法屋自监督学习&#xff08;Self-supervised learning&#xff09;最近获得了很多关注&#xff0c;因为其可以避免对数据集进行大量的标签标注。它可以把自己定义的伪标签当作训练的信号&#xff0c;然后把学习到的表示&#xff08;representation&#…

论文浅尝 | 重新审视语言模型与知识库的关系

笔记整理&#xff1a;陈卓&#xff0c;浙江大学在读博士&#xff0c;主要研究方向为低资源学习和知识图谱论文链接&#xff1a;https://arxiv.org/pdf/2106.09231发表会议&#xff1a;ACL 2021动机这篇文章类似于是批判性的文章&#xff0c;反驳的之前EMNLP2019的一篇文章knowl…

Spark在美团的实践

本文已发表在《程序员》杂志2016年4月期。 前言 美团是数据驱动的互联网服务&#xff0c;用户每天在美团上的点击、浏览、下单支付行为都会产生海量的日志&#xff0c;这些日志数据将被汇总处理、分析、挖掘与学习&#xff0c;为美团的各种推荐、搜索系统甚至公司战略目标制定提…

【pd读取csv文件踩坑】读取csv文件时报错:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb5 in position 0

【pd读取csv文件踩坑】读取csv文件时报错&#xff1a;UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb5 in position 0

LeetCode 958. 二叉树的完全性检验(层序遍历)

1. 题目 给定一个二叉树&#xff0c;确定它是否是一个完全二叉树。 百度百科中对完全二叉树的定义如下&#xff1a; 若设二叉树的深度为 h&#xff0c;除第 h 层外&#xff0c;其它各层 (1&#xff5e;h-1) 的结点数都达到最大个数&#xff0c;第 h 层所有的结点都连续集中在…

论文浅尝 | 通过学习中间步骤的监督信号改进多跳知识库问答

笔记整理&#xff1a;陈永锐&#xff0c;东南大学博士论文链接&#xff1a;https://arxiv.org/pdf/2101.03737.pdf概述该论文处理多跳知识库问答&#xff08;KBQA&#xff09;任务&#xff0c;主要关注训练过程在中间步骤缺乏监督信号的挑战。由于这一挑战&#xff0c;多跳 KBQ…

打破情感分类准确率 80 分天花板!更加充分的知识图谱结合范式

文 | SeverusNLP的研究者们一直都在尝试&#xff0c;怎么样让模型像人类一样&#xff0c;学会“知识”。而最直观的想法莫过于将人类已经总结出来供机器解读的“知识体系”&#xff0c;及其嵌入表示作为额外的特征添加到NLP模型之中。至少&#xff0c;从直觉上看&#xff0c;将…

分布式块存储系统Ursa的设计与实现

引言 云硬盘对IaaS云计算平台有至关重要的作用&#xff0c;几乎已成为必备组件&#xff0c;如亚马逊的EBS(Elastic Block Store)、阿里云的盘古、OpenStack中的Cinder等。云硬盘可为云计算平台带来许多优良特性&#xff0c;如更高的数据可靠性和可用性、灵活的数据快照功能、更…

sql日期转【pd读取csv文件踩坑】读取csv文件时报错:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb5 in position 0

【pd读取csv文件踩坑】读取csv文件时报错&#xff1a;UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb5 in position 0 select trunc(2020-08-10 10:43:32 ,yyyy-MM-dd hh24:mi:ss )1.当前时间 select CURRENT_TIMESTAMP 2020-08-10 10:41:22.94347308 select C…

LeetCode 919. 完全二叉树插入器(层序遍历队列)

1. 题目 完全二叉树是每一层&#xff08;除最后一层外&#xff09;都是完全填充&#xff08;即&#xff0c;结点数达到最大&#xff09;的&#xff0c;并且所有的结点都尽可能地集中在左侧。 设计一个用完全二叉树初始化的数据结构 CBTInserter&#xff0c;它支持以下几种操作…

开源开放 | 中文相对复杂词汇识别数据集RCWI-Dataset(CCKS2021)

OpenKG地址&#xff1a;http://openkg.cn/dataset/rcwi-dataset开放许可协议&#xff1a;CC BY-SA 4.0 &#xff08;署名相似共享&#xff09;贡献者&#xff1a;北京语言大学&#xff08;阙孟溪、张宇飞、于东&#xff09;1. 摘要中文领域的词汇复杂度评估资源较为匮乏&#x…

提升 NLP 实战技能的一点建议

作为最典型的 AI 领域之一&#xff0c;NLP 这些年也是越来越热门&#xff0c;基本上是各大厂必备了。随着 OpenAI 等技术的诞生、迁移学习等技术的成功应用&#xff0c;使得 NLP 技术在搜索、推荐、信息流、互联网金融、社交网络等领域不断发展壮大。与此同时&#xff0c;NLP 工…

深入FFM原理与实践

FM和FFM模型是最近几年提出的模型&#xff0c;凭借其在数据量比较大并且特征稀疏的情况下&#xff0c;仍然能够得到优秀的性能和效果的特性&#xff0c;屡次在各大公司举办的CTR预估比赛中获得不错的战绩。美团技术团队在搭建DSP的过程中&#xff0c;探索并使用了FM和FFM模型进…

Python调用Gurobi求解简单线性规划问题

原文链接&#xff1a;https://blog.csdn.net/weixin_38442390/article/details/121793199

LeetCode 993. 二叉树的堂兄弟节点(层序遍历)

文章目录1. 题目2. 解题2.1 层序遍历2.2 递归查找1. 题目 在二叉树中&#xff0c;根节点位于深度 0 处&#xff0c;每个深度为 k 的节点的子节点位于深度 k1 处。 如果二叉树的两个节点深度相同&#xff0c;但父节点不同&#xff0c;则它们是一对堂兄弟节点。 我们给出了具有…

论文浅尝 | IRW:基于知识图谱和关系推理的视觉叙事框架

笔记整理&#xff1a;孙悦&#xff0c;天津大学 链接&#xff1a;https://www.aaai.org/AAAI21Papers/AAAI-3382.XuC.pdf动机视觉叙事是生成一个短篇故事来描述有序图像流的任务。与视觉字幕不同&#xff0c;故事不仅包含事实描述&#xff0c;还包含未出现在图像中的想象概念。…

薅羊毛 Colab使用外部数据的7种方法!

文 | Coggle源 | Coggle数据科学Colab作为非常强大且优惠的计算平台&#xff0c;一直广受大家喜爱。可以随时随地使用&#xff0c;还有免费的GPU可以薅羊毛。那么如何在Colab中使用外部数据集&#xff0c;来完成竞赛呢&#xff0c;本文将给出几种常见的方法。方法1&#xff1a;…

sql 将整数型 numeric数据转换成date

将整数型的20180909时间转换成日期 select cast(to_char(A,99999999) as date) as yy from 表名 limit 100

高可用性系统在大众点评的实践与经验

背景 所谓高可用性指的是系统如何保证比较高的服务可用率&#xff0c;在出现故障时如何应对&#xff0c;包括及时发现、故障转移、尽快从故障中恢复等等。本文主要以点评的交易系统的演进为主来描述如何做到高可用&#xff0c;并结合了一些自己的经验。需要强调的是&#xff0c…