备战春招——12.05算法

树、二叉树

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

二叉树

中序遍历

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

cpp 复制代码
/** 递归实现
 * 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...

相关推荐
心仪久了会沦陷1 分钟前
C语言数据结构入门——树与二叉树详解:概念、堆实现与链式遍历
c语言·数据结构·算法
小此方6 分钟前
[算法实战论:动态规划]背包问题概念,01不满背包问题,01满背包问题,背包问题的滚动数组空间优化
算法·动态规划
悠仁さん1 小时前
【C++】哈希表
c++·算法·散列表
地平线开发者2 小时前
点云算法整理与常用计算模块:从数据到模型,再到工程与量化
算法·自动驾驶
武子康4 小时前
H3-World 为何在加载 LoRA 前,先检查导入的代码?
人工智能·深度学习·算法
秋天的怀念_David5 小时前
算法一千零一夜 · 第二十八夜 注册
java·程序人生·算法
NEFU_Jyj7 小时前
贝尔数(组合数学)
算法
希和20277 小时前
C语言程序设计题|有序数组插入数字冒泡排序
c语言·数据结构·算法
Pniubi8 小时前
力扣73 矩阵置零
算法·leetcode·矩阵
布莱克60518 小时前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map