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

直播做网站网站后台开发步骤

直播做网站,网站后台开发步骤,企业网站建设规划书的内容,网站建设 swot分析摘要#xff1a; it人员无论是使用哪种高级语言开发东东#xff0c;想要更高效有层次的开发程序的话都躲不开三件套#xff1a;数据结构#xff0c;算法和设计模式。数据结构是相互之间存在一种或多种特定关系的数据元素的集合#xff0c;即带“结构”的数据元素的集合 it人员无论是使用哪种高级语言开发东东想要更高效有层次的开发程序的话都躲不开三件套数据结构算法和设计模式。数据结构是相互之间存在一种或多种特定关系的数据元素的集合即带“结构”的数据元素的集合“结构”就是指数据元素之间存在的关系分为逻辑结构和存储结构。 此系列专注讲解数据结构数组、链表、队列、栈、树、哈希表、图通过介绍概念以及提及一些可能适用的场景并以C代码简易实现多方面认识数据结构最后为避免重复造轮子会浅提对应的STL容器。本文介绍的是队Queue。 开发环境VScodeC17 关键词 C数据结构队列Queue 声明本文作者原创转载请附上文章出处与本文链接。 文章目录 摘要正文介绍特性应用 代码实现对应STL 推荐阅读 正文 介绍 队列Queue是一种常见的数据结构它遵循先入先出FIFOFirst In First Out的原则。队列中的元素按照它们进入队列的顺序排列并且只有队首的元素可以被删除队尾的元素可以被添加。 队列也有两种存储表示方法顺序存储用数组实现和链式存储用链表实现顺序存储常见的就是环形队列初始化时必须指定队列容量大小普通队列则基于链表。 特性 先进先出队列的基本操作是遵循FIFO先进先出原则的。这意味着最早添加到队列中的元素将是最早被移除的。这种特性使得队列在处理需要按顺序处理的元素时非常有用比如任务调度、打印作业等。 受限的访问队列只允许在两端进行操作。在队列的一端称为“队尾”或“后端”添加元素而在另一端称为“队头”或“前端”移除元素。这种特性确保了队列中的元素按照它们被添加的顺序进行处理。 应用 队列在多种场景中都有应用包括 任务调度在计算机系统中多个任务可能同时请求CPU资源。使用队列可以确保任务按照它们到达的顺序得到处理。打印机作业队列当一个用户提交一个打印作业时它会被添加到打印队列中。打印机按照作业进入队列的顺序打印它们。网络数据包处理在网络通信中接收到的数据包需要按照它们到达的顺序进行处理。队列可以帮助管理这些数据包确保它们按照正确的顺序被处理。图形界面事件处理在图形用户界面GUI中用户事件如鼠标点击或键盘输入被添加到事件队列中。事件处理程序按照事件进入队列的顺序处理它们。 代码实现 #cqueue.h #ifndef CQUEUE_H #define CQUEUE_H #include iostream using namespace std;// 队链节点 templateclass T class CQueueNode { public:CQueueNode(T t) :data(t), next(NULL) {}~CQueueNode() { next NULL; }CQueueNode(const CQueueNode node){if (this node){return;}*this node;}CQueueNode operator(const CQueueNode node){if (this node){return *this;}this-data node.data;this-next node.next;return *this;}public:T data;CQueueNode *next; };// 普通队列实现基于链表 templateclass T class CQueue { public:CQueue() :head(NULL), tail(NULL), node(NULL), m_iSize(0) {}~CQueue(){delete head;head NULL;delete tail;tail NULL;delete node;node NULL;}int size(); // 获取队内成员个数 bool empty(); // 判断是否为空队列void push(T t); // 队尾入队T pop(); // 队首出队T front(); // 返回队首T back(); // 返回队尾void traverse(); // 打印整个队列private:CQueueNodeT* head;CQueueNodeT* tail;CQueueNodeT* node;int m_iSize; };templateclass T int CQueueT::size() {return m_iSize; }templateclass T bool CQueueT::empty() {return 0 m_iSize; }templateclass T void CQueueT::push(T t) {node new CQueueNodeT(t);if (head NULL){head tail node;}else{tail-next node;tail node;}m_iSize; }templateclass T T CQueueT::pop() {if (empty()){throw empty queue.;}node head;head head-next;m_iSize--;return node-data; }templateclass T T CQueueT::front() {if (empty()){throw empty queue.;}return head-data; }templateclass T T CQueueT::back() {if (empty()){throw empty queue.;}return tail-data; }templateclass T void CQueueT::traverse() {CQueueNodeT *node head;while (node ! NULL){cout node-data ;node node-next;}cout endl; }#endif // !CQUEUE_H#cqueue.cpp #include cqueue.h using namespace std;int main(int argc, char**argv) {CQueuechar queue;queue.push(h);queue.push(e);queue.push(l);queue.push(l);queue.push(o);queue.push( );queue.push(w);queue.push(o);queue.push(r);queue.push(l);queue.push(d);queue.traverse();cout queue.front() endl;cout queue.back() endl;char c queue.pop();cout c endl;queue.traverse();return 0; }对应STL queue 普通队列。其原理是先进先出FIFO只有队头和队尾可以被访问故不可有遍历行为默认也为deque双端队列 deque 双端队列。支持头插、删尾插、删随机访问较vector容器来说慢,但对于首尾的数据操作比较方便 推荐阅读 C/C专栏https://blog.csdn.net/weixin_45068267/category_12268204.html 内含其它数据结构及对应STL容器使用
http://www.zqtcl.cn/news/215880/

相关文章:

  • 提供零基础网站建设教学网站做302重定向
  • 无锡网站推广外包服务页面设计参评
  • 班级网站设计素材有没有专业做盐的网站
  • 免费做旅游海报的网站深圳网站建设公司哪里有
  • 制作网站空间域名哈尔滨网站建设 博客
  • 如何做搞笑的视频视频网站五合一网站建设方案
  • 百怎么做网站经典传奇网页游戏
  • 国外网站设计案例做淘宝客网站能有效果吗
  • 做网站商城需要什么建立一个企业网站
  • 住房城乡建设厅网站wordpress外链视频播放
  • 中国建设银行网站开通短信企业搭建自己的网站
  • 苏州网站维护云梦县城乡建设局网站
  • 分类信息导航网站模板建设银行网站每天几点更新
  • 百度竞价排名规则及费用seo怎么做整站排名
  • 网站免费模板资源商标设计一般多少钱
  • 视频微网站开发谷歌怎么做网站推广
  • 微信公众号服务号网站开发流程网站推广网络
  • 徐州网站建设技术wordpress 分辨 模版
  • 慈溪企业网站建设公司wordpress网盘搜索引擎源码
  • 建筑类企业网站模板怎么制作网站链接
  • 常州网站建设外包襄阳做网站的
  • 临清网站优化用jsp做网站的感想
  • 个人工作室网站网站备案 万网
  • 网络推广模板网站会员管理软件
  • 西乡塘网站建设网站建设公司的成本有哪些方面
  • 在哪里可以学习做网站西安制作公司网站的公司
  • 网站建设 更新 维护淮北矿业工程建设公司网站
  • 网站开发 平台宝应做网站
  • 网站开发开题报告广州的兼职网站建设
  • 辽宁同鑫建设网站网站后期维护费用