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

网站建设网站公司哪家好苏华建设集团有限公司网站

网站建设网站公司哪家好,苏华建设集团有限公司网站,wordpress多语言插件,重庆新华网. STL简介 定义:STL(Standard Template Library)是C标准库的重要组成部分,是一个可复用的组件库,包含数据结构和算法的软件框架。 版本: 原始版本:由Alexander Stepanov和Meng Lee在惠普实验室…
. STL简介
  • 定义:STL(Standard Template Library)是C++标准库的重要组成部分,是一个可复用的组件库,包含数据结构和算法的软件框架。

  • 版本

    • 原始版本:由Alexander Stepanov和Meng Lee在惠普实验室完成,开源,允许任意使用和修改。

    • P. J. 版本:由P. J. Plauger开发,继承自HP版本,被Windows Visual C++采用,不可公开或修改,可读性低。

    • RW版本:由Rouge Wage公司开发,继承自HP版本,被C++ Builder采用,不可公开或修改,可读性一般。

    • SGI版本:由Silicon Graphics Computer Systems, Inc公司开发,继承自HP版本,被GCC (Linux)采用,可移植性好,可公开、修改甚至贩卖,阅读性高。

2. STL的六大组件
  • 容器:存储数据的结构,如vector, list, map等。

  • 迭代器:提供访问容器中元素的接口,如iterator, reverse_iterator等。

  • 算法:对容器中的数据进行操作的函数,如sort, find, copy等。

  • 函数对象:用于封装函数的类,如plus, multiplies等。

  • 配接器:用于扩展容器或迭代器的功能,如stack, queue, priority_queue等。

  • 存储器:管理内存分配和释放,如allocator

1. 二叉树层序打印

问题描述:给定一个二叉树,按照层序遍历的顺序打印节点值。

解决方案

  • 使用std::queue实现层序遍历。

  • #include <iostream>
    #include <queue>
    using namespace std;struct TreeNode {int val;TreeNode* left;TreeNode* right;TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
    };void levelOrder(TreeNode* root) {if (!root) return;queue<TreeNode*> q;q.push(root);while (!q.empty()) {TreeNode* node = q.front();q.pop();cout << node->val << " ";if (node->left) q.push(node->left);if (node->right) q.push(node->right);}
    }
2. 重建二叉树

问题描述:给定二叉树的前序遍历和中序遍历结果,重建二叉树。

解决方案

  • 使用std::map存储中序遍历的索引,方便快速查找。

  • #include <iostream>
    #include <map>
    using namespace std;struct TreeNode {int val;TreeNode* left;TreeNode* right;TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
    };TreeNode* buildTree(vector<int>& preorder, vector<int>& inorder) {map<int, int> inorderMap;for (int i = 0; i < inorder.size(); ++i) {inorderMap[inorder[i]] = i;}return buildTreeHelper(preorder, 0, preorder.size() - 1, inorder, 0, inorder.size() - 1, inorderMap);
    }TreeNode* buildTreeHelper(vector<int>& preorder, int preStart, int preEnd, vector<int>& inorder, int inStart, int inEnd, map<int, int>& inorderMap) {if (preStart > preEnd || inStart > inEnd) return nullptr;TreeNode* root = new TreeNode(preorder[preStart]);int inRootIndex = inorderMap[root->val];int leftTreeSize = inRootIndex - inStart;root->left = buildTreeHelper(preorder, preStart + 1, preStart + leftTreeSize, inorder, inStart, inRootIndex - 1, inorderMap);root->right = buildTreeHelper(preorder, preStart + leftTreeSize + 1, preEnd, inorder, inRootIndex + 1, inEnd, inorderMap);return root;
    }
3. 两个栈实现一个队列

问题描述:使用两个栈实现一个队列的功能,支持入队和出队操作。

解决方案

  • 使用std::stack实现队列的入队和出队操作。

  • #include <iostream>
    #include <stack>
    using namespace std;class MyQueue {stack<int> inStack, outStack;
    public:void push(int x) {inStack.push(x);}void pop() {if (outStack.empty()) {while (!inStack.empty()) {outStack.push(inStack.top());inStack.pop();}}outStack.pop();}int top() {if (outStack.empty()) {while (!inStack.empty()) {outStack.push(inStack.top());inStack.pop();}}return outStack.top();}bool empty() {return inStack.empty() && outStack.empty();}
    };

文章转载自:

http://MomQgzoo.zkxbm.cn
http://rnZPZ181.zkxbm.cn
http://22cHXW1U.zkxbm.cn
http://nHfXpiNV.zkxbm.cn
http://rugnLYXU.zkxbm.cn
http://6xEYMXhU.zkxbm.cn
http://SkN46OaO.zkxbm.cn
http://htwl3ugU.zkxbm.cn
http://K3p6zSkr.zkxbm.cn
http://SyEWWTyh.zkxbm.cn
http://68ZEj1xO.zkxbm.cn
http://0ivIq2P1.zkxbm.cn
http://hrFyhR0b.zkxbm.cn
http://Vc3rjJRE.zkxbm.cn
http://oMgYZtsi.zkxbm.cn
http://qSkI8tbX.zkxbm.cn
http://L5n2ODKl.zkxbm.cn
http://wqurReT4.zkxbm.cn
http://28ptU3Fn.zkxbm.cn
http://lWLlou1q.zkxbm.cn
http://EqWDuqZ3.zkxbm.cn
http://y8wQiooH.zkxbm.cn
http://AYiDzRP5.zkxbm.cn
http://hhRGArba.zkxbm.cn
http://iPSsHHug.zkxbm.cn
http://YKDPscTS.zkxbm.cn
http://La95P2zZ.zkxbm.cn
http://SWXYu02F.zkxbm.cn
http://eMENIBTf.zkxbm.cn
http://WHR9G8XV.zkxbm.cn
http://www.dtcms.com/wzjs/640161.html

相关文章:

  • 漫画驿站网页设计图纸尺寸图怎么备案域名
  • 淮安网站建设优化可以做数理化的网站
  • 九亭微信网站建设wordpress 百度提交
  • 宠物之家网站开发wordpress排除置顶文章
  • 厦门市海沧区建设局网站WordPress开通用户投稿功能
  • 百度上搜不到做的网站网站开发的软件介绍
  • 在网站开发中如何设置用户登录西宁网站设计企业
  • 手机网站开发+手机模拟器刷关键词排名系统
  • 怎么做企业网站上虞区驿亭镇新农村建设网站
  • 水库信息化网站建设wordpress手机版使用
  • 网站开发人员培训家用宽带怎样做网站服务器
  • 哪个网站可以找到毕业设计快递网站制作
  • 西安正规网站建设公司php培训
  • 做网站办什么类型营业执照网站建设的教材
  • 河南教育平台网站建设杭州公司官方网站制作
  • 临沂网站建设门户网站 建设商 排名
  • 明星个人网站设计恢复被百度k网站 关键词收录
  • 做电影网站量刑标准企业网站建设的缺点
  • 昆明做网站建设多少钱佛山建网站哪家好
  • 系统难还是网站设计难做网站空间需要续费
  • 网站建设 单一来源wordpress 外链接口
  • 网站建设书本网站谁做的比较好看的
  • 学做效果图网站江西九江永修网站建设
  • 平面设计接单的网站室内设计师接私单的app
  • 打开网站 显示建设中站长工具之家
  • 济源网站开发网站建设工具有哪些品牌
  • 电脑传奇网站百度竞价排名怎么收费
  • .帮别人做网站google建网站
  • 怎么做企业网站仿站五核网站建设
  • 网站怎么自己编辑模块怎么查找网站建设