news 2026/8/10 18:16:10

PAT 1162 Postfix Expression

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PAT 1162 Postfix Expression




这一题的大意是让我们输出后缀表达式,那么很明显直接按照左右根的顺序输出即可,可是需要注意的是当左孩子不存在,右孩子存在的这一种情况,需要先输出根,再输出右孩子,而不是原来的左右根的顺序。
完整的代码如下:

#include<bits/stdc++.h>#include<iostream>usingnamespacestd;intN;structnode{string data;intl=-1;intr=-1;intparent=-1;}n[25];stringdfs(introot){if(root==-1){return"";}string lchild="";string rchild="";if(n[root].l!=-1){lchild=dfs(n[root].l);}if(n[root].r!=-1){rchild=dfs(n[root].r);}if(lchild==""&&rchild!=""){return"("+n[root].data+rchild+")";}elsereturn"("+lchild+rchild+n[root].data+")";}intmain(){cin>>N;for(inti=1;i<=N;i++){string s;cin>>s;intl;intr;cin>>l>>r;n[i].data=s;n[i].l=l;n[i].r=r;if(l!=-1)n[l].parent=i;if(r!=-1)n[r].parent=i;}introot;for(inti=1;i<=N;i++){if(n[i].parent==-1){root=i;break;}}string ans=dfs(root);cout<<ans<<endl;return0;}

总结:本质是DFS后序遍历,但要注意特殊情况。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/8 0:26:28

插件分享:将AI生成的数学公式无损导出为Word文档

对于经常使用DeepSeek、豆包等AI工具处理技术内容的小伙伴&#xff0c;一个常见的困扰是&#xff1a;生成的回答中包含的数学公式&#xff0c;复制到Word后往往变成难以编辑的代码或模糊图片&#xff0c;手动调整耗时费力。 本文将介绍解决此问题的技术方案和插件&#xff0c;…

作者头像 李华
网站建设 2026/8/9 11:04:50

Ubuntu 22.04 开发环境 CA 证书签发完整笔记(完整版)

Ubuntu 22.04 开发环境 CA 证书签发完整笔记 开发环境 前端: Vue3+TS+Vite+ESM 后端:NestJS 数据库:MySQL+Redis 虚拟机OS:Ubuntu 22.04 LTS 工作拓扑 开发环境参数(VS Code) 版本: 1.106.3 (Universal) Electron: 37.7.0 ElectronBuildId: 12781156 Chromium: 138.0.72…

作者头像 李华
网站建设 2026/8/8 15:01:05

Janus-Pro-1B终极指南:快速构建下一代多模态AI应用

Janus-Pro-1B是DeepSeek推出的革命性多模态模型&#xff0c;以其创新的视觉编码解耦架构重新定义了AI的理解与生成能力边界。这款仅需10亿参数的轻量级模型在图像生成与视觉理解任务上实现了对行业巨头的性能超越&#xff0c;为开发者提供了前所未有的技术接入门槛。 【免费下载…

作者头像 李华
网站建设 2026/8/6 6:58:55

手把手教你用JS正则表达式,轻松实现密码强度分步校验

在构建前端登录或注册功能时&#xff0c;密码强度的校验是保障用户账户安全的第一道防线。JavaScript正则表达式为此提供了高效、灵活的验证手段。本文将结合实际开发场景&#xff0c;探讨如何设计正则表达式来匹配符合常见安全策略的密码。 密码强度校验需要哪些核心规则 一个…

作者头像 李华
网站建设 2026/8/9 10:40:48

SenseVoice终极指南:快速掌握多语言音频理解核心技术

SenseVoice终极指南&#xff1a;快速掌握多语言音频理解核心技术 【免费下载链接】SenseVoice Multilingual Voice Understanding Model 项目地址: https://gitcode.com/gh_mirrors/se/SenseVoice SenseVoice是一个革命性的多语言音频理解基础模型&#xff0c;集成了语音…

作者头像 李华
网站建设 2026/8/9 22:18:49

C++、Qt中打开文件夹获取文件

void Qt_operateping::onOpenFileClicked() {// 打开文件对话框&#xff0c;供用户选择图片文件// getOpenFileName() 函数的四个参数依次是&#xff1a;// 1. 父组件&#xff0c;通常传递当前对象 this// 2. 对话框标题// 3. 初始打开的文件路径&#xff08;此处是 D 盘根目录…

作者头像 李华