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

网站开发语言学习网络营销平台名词解释

网站开发语言学习,网络营销平台名词解释,北京网页设计公司山东济南兴田德润在哪里,做网站运营需要学什么文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析#xff1a;思路比较简单#xff0c;遍历所有节点然后判断该节点是否为左叶子节点#xff0c;如果是#xff0c… 文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析思路比较简单遍历所有节点然后判断该节点是否为左叶子节点如果是将其值累加。遍历算法采用【算法与数据结构】144、94、145LeetCode二叉树的前中后遍历递归法、迭代法文章中递归前序遍历算法设置了一个左节点标志符遍历左节点时标识符为1左右节点为空则为叶子节点。   程序如下 class Solution { public:void traversal_preOrder(TreeNode* cur, int sum, int left_flag) { // 前序遍历if (cur NULL) return;if (!cur-left !cur-right left_flag) sum cur-val; // 叶子节点且为左节点traversal_preOrder(cur-left, sum, 1); // 左traversal_preOrder(cur-right, sum, 0); // 右 }// 遍历所有节点判断每个节点的左节点是否为叶子结点然后相加int sumOfLeftLeaves(TreeNode* root) { int result 0;traversal_preOrder(root, result, 0);return result;} };复杂度分析 时间复杂度 O ( n ) O(n) O(n)。空间复杂度 O ( n ) O(n) O(n)。 三、完整代码 # includeiostream # includestring # includevector # includequeue using namespace std;// 树节点定义 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:void traversal_preOrder(TreeNode* cur, int sum, int left_flag) { // 前序遍历if (cur NULL) return;if (!cur-left !cur-right left_flag) sum cur-val; // 叶子节点且为左节点traversal_preOrder(cur-left, sum, 1); // 左traversal_preOrder(cur-right, sum, 0); // 右 }// 遍历所有节点判断每个节点的左节点是否为叶子结点然后相加int sumOfLeftLeaves(TreeNode* root) { int result 0;traversal_preOrder(root, result, 0);return result;} };// 前序遍历迭代法创建二叉树每次迭代将容器首元素弹出弹出代码还可以再优化 void Tree_Generator(vectorstring t, TreeNode* node) {if (!t.size() || t[0] NULL) return; // 退出条件else {node new TreeNode(stoi(t[0].c_str())); // 中if (t.size()) {t.assign(t.begin() 1, t.end());Tree_Generator(t, node-left); // 左}if (t.size()) {t.assign(t.begin() 1, t.end());Tree_Generator(t, node-right); // 右}} }// 层序遍历 vectorvectorint levelOrder(TreeNode* root) {queueTreeNode* que;if (root ! NULL) que.push(root);vectorvectorint result;while (!que.empty()) {int size que.size(); // size必须固定, que.size()是不断变化的vectorint vec;for (int i 0; i size; i) {TreeNode* node que.front();que.pop();vec.push_back(node-val);if (node-left) que.push(node-left);if (node-right) que.push(node-right);}result.push_back(vec);}return result; }templatetypename T void my_print(T v, const string msg) {cout msg endl;for (class T::iterator it v.begin(); it ! v.end(); it) {cout *it ;}cout endl; }templateclass T1, class T2 void my_print2(T1 v, const string str) {cout str endl;for (class T1::iterator vit v.begin(); vit v.end(); vit) {for (class T2::iterator it (*vit).begin(); it (*vit).end(); it) {cout *it ;}cout endl;} }int main() {vectorstring t { 3, 9, NULL, NULL, 20, 15, NULL, NULL, 7, NULL, NULL }; // 前序遍历my_print(t, 目标树);TreeNode* root new TreeNode();Tree_Generator(t, root);vectorvectorint tree levelOrder(root);my_print2vectorvectorint, vectorint(tree, 目标树:);Solution s;int result s.sumOfLeftLeaves(root);cout sumOfLeftLeaves: result endl;system(pause);return 0; }end
http://www.huolong8.cn/news/8996/

相关文章:

  • 猎上网登陆官方网站郑州高新区做网站的公司
  • 网站开发建设公司关于网站平台建设调研的函
  • 建设银行网站电脑上不去如何在线上销售自己的产品
  • 柳州专业做网站设计wordpress 文章连续
  • js弹出网站做个模板网站多少钱
  • 网站制作 信科网络个人创建网站
  • 厦门学网站设计免费制作
  • 全能网站建设教程企业网站seo贵不贵
  • 做a短视频网站asp做静态网站
  • 张家明做网站郑州做网站七彩科技
  • 网站建设制作收费安居客网站怎么做
  • 个人网站设计与制作代码seo产品
  • 电子商务网站建设与维护考试题网站站点地图
  • 三门峡网站建设价格网站设计的要求有哪些
  • 网站开发的技术风险六安网站制作费用多少
  • 文明网i中国精神文明建设门户网站网站建设规划书范文
  • 营销型网站建设申请域名时公司类型的域名后缀一般是?翻译建设企业网站
  • 国外搜索引擎大全不屏蔽智能网站排名优化
  • 详述网站建设的过程简答题网站描述
  • 丰宁县有做网站的吗seo全网推广
  • 建设网站的费用明细整木全屋定制十大名牌
  • 大连三合一网站制作diy
  • 网站模板psd素材网络公司网站首页
  • 做网站游戏总结的例文模板建站多少钱
  • 网站应具有的功能模块增城微信网站建设
  • 有哪些企业可以做招聘的网站有哪些内容皮包设计制作培训
  • 公司建设官方网站什么是网络营销它的特点有哪些
  • 做影视网站我国档案网站建设研究论文
  • 网站建设服务哪家便宜如何做网站诊断
  • 建设信用卡网银网站云南网站建设哪家强