首页 > 编程语言 >代码随想录算法训练营第十二天| 递归遍历 (必须掌握)迭代遍历 统一迭代

代码随想录算法训练营第十二天| 递归遍历 (必须掌握)迭代遍历 统一迭代

时间:2023-06-20 10:36:30浏览次数:42  
标签:preRecursor 遍历 TreeNode 迭代 随想录 result root

递归遍历

重点:

1,TreeNode的自定义

2,val =0 ==  val = NULL;

代码:

 1 void preRecursor(TreeNode* root, vector<int>& result)
 2 {
 3     if (root == NULL)
 4         return;
 5     result.push_back(root->val);
 6     preRecursor(root->left, result);
 7     preRecursor(root->right, result);
 8 }
 9 
10 vector<int> preorderTraversal(TreeNode* root)
11 {
12     vector<int> result;
13     preRecursor(root, result);
14     return result;
15 }

 

标签:preRecursor,遍历,TreeNode,迭代,随想录,result,root
From: https://www.cnblogs.com/smartisn/p/17492929.html

相关文章

  • 【Java】Map集合的遍历
    HashMap<String,String>map=newHashMap<>();map.put("001","赵");map.put("002","钱");map.put("003","孙");map.put("004","李......
  • Loop or Iterate over all or certain columns of a dataframe in Python-pandas 遍历
    Inthisarticle,wewilldiscusshowtolooporIterateoverallorcertaincolumnsofaDataFrame?Therearevariousmethodstoachievethistask.Let’sfirstcreateaDataframeandseethat: Code:  Python3  #importpandaspackageim......
  • Collection集合的遍历方式
    Collection集合的遍历方式方式一:迭代器遍历就是一个一个的把容器中的元素访问一遍。迭代器在Java中的代表是Iterator,迭代器是集合的专用遍历方式。Collection集合获取迭代器lterator中的常用方法迭代器执行流程   publicclassCollectionDemo01{ ......
  • 代码随想录算法训练营第十一天| 239. 滑动窗口最大值 347.前 K 个高频元素
    239.滑动窗口最大值 难点:1,想好怎么快速找到区块内的最大数值,往常使用的是在遍历一次,但是是O(m*n)思路:1,使用单调队列,所有的数值都必须是从大到小,2,用队列保持必要的顺序,而且对于大于K的循环,每次都要求poppush这两个操作代码:1voidpop(deque<int>&slidingWin......
  • 20230426 20. 迭代器模式
    介绍迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示当你需要访问一个聚集对象,而且不管这些对象是什么都需要遍历的时候,你就应该考虑用迭代器模式你需要对聚集有多种方式遍历时,可以考虑用迭代器模式。为遍历不同的聚集结构提供......
  • 代码随想录算法训练营第十天| 20. 有效的括号 1047. 删除字符串中的所有相邻重复项
    20.有效的括号  特点:左括号之后,可能还会有左括号,但是只要有右括号,那么它必须立刻和最近的左括号代码:1charreturnRightChar(char&c)2{3switch(c)4{5case'[':return']';6case'(':return')';7case'{':r......
  • 代码随想录Day24|回溯算法+JAVA大作战
     今日任务39. 组合总和40.组合总和II131.分割回文串 93.复原IP地址  78.子集   90.子集II   39.组合总和classSolution{List<List<Integer>>ans=newArrayList<>();LinkedList<Integer>now_ans=newLinkedList<>();publicLi......
  • 迭代器模式(Iterator Pattern)
    迭代器模式(IteratorPattern)一、定义提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该对象的内部表示。二、优缺点优点: 1、它支持以不同的方式遍历一个聚合对象。2、迭代器简化了聚合类。3、在同一个聚合上可以有多个遍历。4、在迭代器模式中,增加新的聚合类和......
  • 代码随想录day08
     第四章 字符串part01344.反转字符串 541. 反转字符串II 剑指Offer 05.替换空格 151.翻转字符串里的单词 剑指Offer58-II.左旋转字符串344.反转字符串 classSolution{publicvoidreverseString(char[]s){//双指针法依次交换首尾两个fo......
  • c++实现二叉树中序遍历
    #include<iostream>usingnamespacestd;//定义二叉树节点结构体structTreeNode{  intval;  TreeNode*left;  TreeNode*right;  TreeNode(intx):val(x),left(NULL),right(NULL){}};//中序遍历函数voidinorderTraversal(TreeNode*root){......