安阳百度网站制作多少钱cfensi.wordpress

张小明 2026/1/9 16:19:09
安阳百度网站制作多少钱,cfensi.wordpress,青岛关键词网站排名,新余网站制作一、队列时间复杂度分析1. 链队列时间复杂度// 链队列节点 typedef struct QueueNode {int data;struct QueueNode* next; // 额外指针开销 } QueueNode;// 链队列结构 typedef struct {QueueNode* front; // 队头指针QueueNode* rear; // 队尾指针 } LinkedQueue;入队操作…一、队列时间复杂度分析1.链队列时间复杂度// 链队列节点 typedef struct QueueNode { int data; struct QueueNode* next; // 额外指针开销 } QueueNode; // 链队列结构 typedef struct { QueueNode* front; // 队头指针 QueueNode* rear; // 队尾指针 } LinkedQueue;入队操作 O(1)- 为什么是常数时间通过ai解决int enqueueLinked(LinkedQueue* q, int value) { // 1. 创建新节点 O(1) QueueNode* newNode (QueueNode*)malloc(sizeof(QueueNode)); // 2. 设置数据 O(1) newNode-data value; newNode-next NULL; if (isEmptyLinkedQueue(q)) { // 3. 直接设置 front 和 rear O(1) q-front q-rear newNode; } else { // 4. 直接插入到队尾 O(1) q-rear-next newNode; // 通过 rear 直接访问尾部 q-rear newNode; // 更新 rear } return 1; // 总共4个O(1)操作 O(1) }关键点通过rear 指针所以不需要遍历就能直接找到尾部出队操作 O(1)- 单链表需要从头遍历吗int dequeueLinked(LinkedQueue* q, int* value) { // 1. 检查空队列 O(1) if (isEmptyLinkedQueue(q)) return 0; // 2. 直接从 front 获取数据 O(1) QueueNode* temp q-front; *value temp-data; // 3. 移动 front 指针 O(1) q-front q-front-next; // 4. 特殊情况处理 O(1) if (q-front NULL) { q-rear NULL; } // 5. 释放内存 O(1) free(temp); return 1; // 总共5个O(1)操作 O(1) }不需要有front 指针直接指向头部删除就是移动这个指针。2.循环队列时间复杂度#define MAX_SIZE 100 typedef struct { int data[MAX_SIZE]; // 连续内存空间 int front; // 队头索引 int rear; // 队尾索引 } CircularQueue;所有操作 O(1)- 数组随机访问特性// 入队 O(1) int enqueueCircular(CircularQueue* q, int value) { if (isFullCircularQueue(q)) return 0; // O(1) - 简单比较 // 数组的随机访问是 O(1) q-data[q-rear] value; // O(1) - 直接下标访问 q-rear (q-rear 1) % MAX_SIZE; // O(1) - 简单计算 return 1; // 总3个O(1)操作 O(1) } // 出队 O(1) int dequeueCircular(CircularQueue* q, int* value) { if (isEmptyCircularQueue(q)) return 0; // O(1) *value q-data[q-front]; // O(1) - 直接下标访问 q-front (q-front 1) % MAX_SIZE; // O(1) - 简单计算 return 1; // 总3个O(1)操作 O(1) }关键点数组通过下标访问任意位置都是 O(1)这是由内存的物理特性决定的地址 基地址 下标 × 元素大小一次计算就能定位不需要遍历二、空间复杂度分析1.链队列的空间复杂度// 每个节点需要 struct QueueNode { int data; // 4字节假设int是4字节 struct QueueNode* next; // 8字节64位系统 // malloc 还有额外的头部开销通常8-16字节 }; // 空间计算 // 有效数据4字节 // 指针开销8字节 // 内存对齐和malloc开销约12字节 // 总共约24字节存储一个int // 如果有n个元素 // 空间复杂度 O(n) // 但实际上空间利用率 ≈ 4/24 ≈ 16.7%2.循环队列的空间复杂度// 固定分配 #define MAX_SIZE 100 // 预分配100个int的位置 int data[MAX_SIZE]; // 400字节4×100 // 空间计算 // 有效数据4×n字节 // 额外空间两个int指针8字节 // 总共400 8 408字节 // 空间复杂度 O(n) 但n是固定的 // 空间利用率最高可达 (MAX_SIZE-1)/MAX_SIZE ≈ 99% // 注意循环队列通常牺牲一个空间区分空和满 // 实际内存布局 // [front][rear][data[0]][data[1]]...[data[99]]三、复杂度对比表格操作链队列循环队列原因分析入队O(1)O(1)都有尾指针/尾索引直接访问出队O(1)O(1)都有头指针/头索引直接访问查找O(n)O(1)数组支持随机访问链表需要遍历空间O(n)O(n)但实际开销不同内存开销高~24字节/元素低4字节/元素链表有指针和malloc开销缓存友好度差节点不连续好连续内存数组能利用CPU缓存预取内存碎片可能产生无链表频繁malloc/free
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

建设局网站查询个人信息怎么做网站播放器

👨💻 Word图片一键转存功能开发日记 🔍 寻找解决方案的漫漫长路 作为一个即将毕业的吉林软件工程专业大三学生,我最近在给我的CMS新闻管理系统添加一个超实用的功能 - Word文档一键粘贴并自动上传图片!这简直是内容编…

张小明 2026/1/1 11:07:50 网站建设

织梦pc怎么做手机网站网站域名过期怎么做

LobeChat模型水印技术应用探索 在AI生成内容(AIGC)日益泛滥的今天,一段看似真实的文本、图像或语音,可能并非出自人类之手。企业用大模型撰写报告,用户借开源模型创作文章,平台通过代理接口调用远程服务—…

张小明 2026/1/1 15:19:20 网站建设

网站建设公司销售dede 网站版权信息

🔍 为什么选择 LangGraph Elasticsearch? Elasticsearch 原生集成主流生成式 AI 工具,而 LangGraph 检索代理模板 是由 LangChain 开发的开源 RAG 应用框架。两者结合,不仅能快速构建基于多模态检索的问答系统,还能通…

张小明 2026/1/1 22:13:54 网站建设

公司想推广做网站有用asp网站建设与设计

在智慧城市建设的浪潮中,“数字孪生”已成为城市精细化治理的“标配”愿景。然而,对于众多承担着大型信息系统集成任务的厂商而言,从宏伟蓝图到落地应用,中间横亘着巨大的技术鸿沟:如何将专业的三维引擎、复杂的GIS数据…

张小明 2026/1/2 1:34:25 网站建设

广西网站建设产品优化百度经验悬赏任务平台

AI漫画翻译终极解决方案:快速实现日漫无障碍阅读 【免费下载链接】manga-image-translator Translate manga/image 一键翻译各类图片内文字 https://cotrans.touhou.ai/ 项目地址: https://gitcode.com/gh_mirrors/ma/manga-image-translator 还在为看不懂日…

张小明 2026/1/3 7:11:01 网站建设