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

备战春招——12.05算法

树、二叉树

本次主要是对树、二叉树的前中后和递归与非递归遍历以及通过这种结构完成一些操作实现。

二叉树

中序遍历

在这里插入图片描述

中序遍历就是中间打印出结果嘛,如下列递归实现的,中间取结果.

/** 递归实现
 * 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<int> data;
    void test(TreeNode* node){
        if(node==nullptr) return;
        if(node->left!=nullptr){
            test(node->left);
        }
        data.push_back(node->val);
        if(node->right!=nullptr){
            test(node->right);
        }
    }
    vector<int> inorderTraversal(TreeNode* root) {
        test(root);
        return data;
    }
};

今天事情多,就刷了一道,emm…


http://www.kler.cn/a/159283.html

相关文章:

  • 【JAVA】使用IDEA创建maven聚合项目
  • c++原型模式(Prototype Pattern)
  • nginx源码安装配置ssl域名
  • 使用Redis的一些经验总结
  • 【Vitepress报错】Error: [vitepress] 8 dead link(s) found.
  • git常用命令+搭vscode使用
  • IntelRealSense深度相机D455在ROS1运行中的消息内容
  • Linux定时循环备份指定文件或文件夹,每月永久备份留1份
  • Linux基础命令(测试相关)
  • Qt篇——QChartView实现鼠标滚轮缩放、鼠标拖拽平移、鼠标双击重置缩放平移、曲线点击显示坐标
  • 【Polar靶场WEB签到】
  • ES通过抽样agg聚合性能提升3-5倍
  • 【算法思考记录】力扣2477. 到达首都的最少油耗【JavaScript,深度优先搜索】
  • flink运行报Exception in thread “main“ java.lang.IllegalStateException
  • Linux 基础知识整理(三)
  • 【开源】基于Vue.js的公司货物订单管理系统
  • Android Studio的笔记--三元表达式、布尔运算符、与() 或(||) 非(!)
  • 一、技术体系结构
  • 圈子社交系统:打破时间与空间的限制。APP小程序H5三端源码交付,支持二开!
  • Python:可以做什么?
  • Go中的延时执行魔法:深入浅出defer用法
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • HTML5 基础总结
  • 周周爱学习之Redis重点总结
  • 程序员必看:查券助手返利机器人是如何实现的?
  • 每日一题(LeetCode)----字符串--反转字符串 II