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

正规网站制作公司哪里有网站建设最简单的教程视频教程

正规网站制作公司哪里有,网站建设最简单的教程视频教程,国内炫酷的网站首页,怎么识别网站开发语言list是双向带头链表。所以迭代器end()相当于哨兵卫的头。 list不支持和[]重载#xff0c;原因在于list空间不是连续的#xff0c;和[]的代价比较大。 访问第n个节点#xff0c;只能用for循环#xff0c;来实现 listint l; l.push_back(0); l.push_back(1); l.pu…list是双向带头链表。所以迭代器end()相当于哨兵卫的头。 list不支持和[]重载原因在于list空间不是连续的和[]的代价比较大。 访问第n个节点只能用for循环来实现 listint l; l.push_back(0); l.push_back(1); l.push_back(2); l.push_back(3); auto lil.begin(); //访问第3个节点 for(size_t i0;i3;i) {li; }list的insert不会失效但是erase会迭代器失效。 list是双向迭代器 迭代器可以简单分为单向迭代器(forward)双向迭代器(bidirectional) /-- 随机迭代器(random acess)/-//-- 不同的数据结构的迭代器决定了可以使用不同的算法。其中随机迭代器代器的范围最广可以用的算法最多。 std:sort只能是随机迭代器用list不能使用list也有自己的sort算法但是效率并不高。 list实现 大概思路先不考虑迭代器链表分为两个类一个类表示节点另外一个类表示链表。 节点模板类 templateclass Tstruct list_node{list_nodeT* _next;list_nodeT* _prev;T _val;list_node(const T val T()):_next(nullptr),_prev(nullptr),_val(val){}}; 这里有个注意的点模板类的类名不是类型list_node只是类名不是对应的自定义类型所以是 list_nodeT* _next;而不是list_node* _next。 编译器优化  拷贝构造写类名也可以 模拟实现的代码 namespace my_list {templateclass T struct list_node{list_nodeT* _prev;list_nodeT* _next;T _val;list_node(const T valT()):_next(nullptr),_prev(nullptr),_val(val){}};templateclass T,class Ref,class Ptrstruct __list_iterator{typedef list_nodeT Node;typedef __list_iteratorT, Ref,Ptr self;Node* _node;__list_iterator(Node* node):_node(node){}Ref operator*(){return _node-_val;}self operator(){_node _node-_next;return *this;}self operator--(){_node _node-_prev;return *this;}bool operator!(const self it){return _node ! it._node;}self operator(int){self tmp(*this);_node _node-_next;return tmp;}Ptr operator-(){return _node-_val;}};templateclass Tclass list{typedef list_nodeT Node;public:typedef __list_iteratorT,T,T* iterator;typedef __list_iteratorT, const T,const T* const_iterator;iterator begin(){return _head-_next; }iterator end(){return _head;}const_iterator const_begin(){return _head-_next;}const_iterator const_end(){return _head;}void empty_init(){_head new Node;_head-_next _head;_head-_prev _head;}list(){empty_init();}~list(){clear();delete _head;_head nullptr;}list(const listT lt){empty_init();for (auto e : lt){push_back(e);} }void swap(listT lt){std::swap(_head, lt._head);std::swap(_size, lt._size);}listT operator(listT lt){swap(lt);return *this;}~list(){clear();delete _head;_head nullptr;}void push_back(const T x){/*Node* tail _head-_prev;Node* newnode new Node(x);tail-_next newnode;newnode-_prev tail;newnode-_next _head;_head-_prev newnode;*/insert(end(), x);}void push_front(const T x){insert(begin(), x);}void pop_back(){erase(--end());}void pop_begin(){erase(begin());}iterator insert(iterator pos, const T x){Node* cur pos._node;Node* prev cur-_prev;Node* newnode new Node(x);prev-_next newnode;newnode-_next cur;cur-_prev newnode;newnode-_prev prev;return newnode;}iterator erase(iterator pos){assert(pos ! end());Node* cur pos._node;Node* prev cur-_prev;Node* next cur-_next;prev-_next next;next-_prev prev;delete cur;return next;}void clear(){iterator it begin();while (it ! end()){iterase(it);}}size_t size(){size_t sz 0;iterator it begin();while (it ! end()){sz;}return sz;}private:Node* _head;Node* _tail;}; }
http://www.dnsts.com.cn/news/38175.html

相关文章:

  • 建设网站托管费用wordpress 幻灯片自定义
  • 机械营销型网站手机网站关键词seo
  • 福州精美个人网站建设公司没有经验可以做新媒体运营吗
  • 陕西省建设造价协会网站工程承包平台app
  • 网站建设与维护 东博东胜区建设局网站
  • 网站备案号查询平台黑彩网站建设需要什么东西
  • 做三国mod的网站wordpress编辑文字空白卡主
  • 中国建设银行网站股份结构变化企业更新网站的好处
  • 怎么搭建自己的网站平台我的百度账号
  • 文山知名网站建设哪家好网站建设的具体实施方案
  • 教育网站建设的必要性网页升级访问永久更新
  • 中企动力做的网站怎么登陆抖音代运营公司
  • 公司建一个网站要多少钱wordpress 获取栏目名称
  • 室内设计网站案例本手机原有微信网站
  • 电子商务网站建设规划的内容wordpress the7 3.80
  • 免费网站app哪个好asp.net开发移动网站模板下载
  • 网站开发微博网站开发环境包括什么
  • 单位网站建设存在问题情况汇报做社区网站用什么程序
  • 网站建设价格如何西宁做网站需要多少钱
  • 怎么将自己做的网站上线seo搜索引擎优化知乎
  • wordpress还原站点反钓鱼网站建设期
  • 郴州做网站的公司安卓app开发软件有哪些
  • 专做热血电影的网站宁波网站开发公司
  • 用易语言做网站抢购软件苏州专业网站建设设计公司排名
  • 网站开发的公司名称广西网红排名前20名
  • 建设银行u盾不能弹出银行网站机场网站建设需求
  • dw表格怎么做网站搜索如何搜索到自己的网站
  • 中小企业建站系统ssh框架做的网站问题
  • 郑州网站建设价格宁波人流多少钱
  • 南城网站建设wordpress 教学视频