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

上海做网站培训班全屏企业网站

上海做网站培训班,全屏企业网站,基于ipv6的网站开发,云南建设学院的网站题目描述 题目分析 更加地觉得编程重要的不在于如何写代码#xff0c;用什么具体的技巧#xff0c;编码本身只是一种将思维呈现的方式#xff0c;但是如果思维是不清晰的#xff0c;那么就算懂得再多的编码的奇技淫巧也是没有什么帮助的。相反#xff0c;如果有一个清晰的…题目描述 题目分析 更加地觉得编程重要的不在于如何写代码用什么具体的技巧编码本身只是一种将思维呈现的方式但是如果思维是不清晰的那么就算懂得再多的编码的奇技淫巧也是没有什么帮助的。相反如果有一个清晰的思路便能很轻松的写出优雅的代码。最近在看《编程大师访谈》感觉很多大师都提到的一个思想编程最重要的是数学而不是代码本身。他们觉得本科教育完全不应该接触计算机而是应该学习数学、历史等知识。我刚进大学的时候觉得学习高数、大学物理没有丝毫意义现在慢慢觉得那些知识对思维的训练的重要程度比什么所谓的专业课重要的多。 大概花了二十分钟做这道题觉得最后的实现方式还是比较优美的。 其实题目要求的就是二叉搜索树的中序遍历但是显然不能使用递归的方式因此一个栈是必须的用一个指针指向当前返回的值。 通过对中序遍历的模拟可以发现任何时候这个指针都在指向一个子树的最左侧的节点。而下一个位置在其右子树的最左侧节点。如果没有右子树则返回栈中的下一个节点该节点是当前节点最近的没有访问过的祖先。 总结一下对于当前节点我们不用访问他的左子树因为它的左子树要么为空要么已经访问我们会访问他的右子树如果没有右子树则返回栈中的下一个节点。如果栈为空则返回空指针表示遍历结束 问题在于我们什么时候入栈呢正是在搜索一个子树最左侧节点的时候将其路径上的节点全部入栈记录当前节点的所有祖先最后再依次访问。 class BSTIterator { public:BSTIterator(TreeNode* root) {iter find_min(root);}int next() {int ret iter-val;if (iter-right ! nullptr) {iter find_min(iter-right);} else {if (!stk.empty()) {iter stk.top();stk.pop();} else {iter nullptr;}}return ret;}bool hasNext() {return iter ! nullptr;} private:stackTreeNode * stk; //保存根节点栈TreeNode *iter;TreeNode *find_min(TreeNode *root) {if (root nullptr) return root;while (root-left ! nullptr) {stk.push(root);root root-left;}return root;} };
http://www.zqtcl.cn/news/982718/

相关文章:

  • 个人网站做影视网站开发学什么专业
  • 企业名称注册查询官网入口免费seo网站推广
  • 浙江门户网站建设公司个体工商户查询
  • 做网站的注意点赛事竞猜网站开发
  • 现在流行用什么语言做网站ppt设计教程网
  • 高端网站哪种好培训机构不退钱最怕什么举报
  • 青岛个人建站模板wordpress没有链接
  • 网上学习网站有哪些厦门城乡建设局网站
  • 怎样创建网站快捷方式个人制作一个网站的费用
  • 恒信在线做彩票的是什么样的网站软件开发流程管理
  • 网站服务器地址在哪里看艺术学校网站模板
  • 郑州中心站网站建设价格标准新闻
  • 电子商务网站管理互联网营销师主要做什么
  • 门户网站指的是什么凯里网络公司建设网站
  • 网站接入服务商查询0建设营销型网站步骤
  • 长沙如何做百度的网站小型网站建设实训教程
  • 昆明网络公司网站网站建设经费请示
  • 手机端网站欣赏wordpress 文章rss
  • 做网站一定要实名认证吗国外免费空间网站申请
  • 阿里云网站空间主机长春网站建设设计
  • 龙华网站建设yihekj长沙招聘网站制作
  • 网站怎么做文本跳出来网络规划设计师有用吗
  • 室内设计网站官网大全中国那些企业做网站做得好
  • 状态管理名词解释网站开发网络营销推广方案案例
  • 做网站需要几大模板河南中国建设信息网
  • 成都温江网站建设空间网页版
  • 做美股的数据网站邢台网站建设公司哪家好一点
  • 青岛即墨网站开发查询建设用地规划许可证在哪个网站
  • 成都APP,微网站开发芜湖企业100强
  • 江门搜索引擎网站推广网约车多少钱一辆