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

网站建设的电话回访免费行情软件app网站下载大全

网站建设的电话回访,免费行情软件app网站下载大全,最受欢迎的十大培训课程,广州做网站找酷爱网络题目#xff1a; 给定一棵二叉树#xff0c;设计一个算法#xff0c;创建含有某一深度上所有节点的链表#xff08;比如#xff0c;若一棵树的深度为 D#xff0c;则会创建出 D 个链表#xff09;。返回一个包含所有深度的链表的数组。 示例#xff1a; 输入#xf…题目 给定一棵二叉树设计一个算法创建含有某一深度上所有节点的链表比如若一棵树的深度为 D则会创建出 D 个链表。返回一个包含所有深度的链表的数组。 示例 输入[1,2,3,4,5,null,7,8]1/ \ 2 3/ \ \ 4 5 7/8输出[[1],[2,3],[4,5,7],[8]] 思路 队列辅助层次遍历使用一个队列来处理树的层次遍历将每一层节点逐一入队和出队。链表构建对于每一层创建一个单独的链表逐一添加节点到链表末尾。结果存储将每层的链表存入结果数组中并记录链表数量。 代码如下不得不说C语言真的是麻烦死了 不懂的可以在评论区问我噢~ /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ /*** Note: The returned array must be malloced, assume caller calls free().*/ // Queue node definition for BFS struct QueueNode {struct TreeNode *treeNode;struct QueueNode *next; };// Queue structure for BFS struct Queue {struct QueueNode *front;struct QueueNode *rear; };// Function to create a new queue struct Queue* createQueue() {struct Queue *queue (struct Queue*)malloc(sizeof(struct Queue));queue-front queue-rear NULL;return queue; }// Enqueue operation void enqueue(struct Queue *queue, struct TreeNode *treeNode) {struct QueueNode *newNode (struct QueueNode*)malloc(sizeof(struct QueueNode));newNode-treeNode treeNode;newNode-next NULL;if (queue-rear) {queue-rear-next newNode;}queue-rear newNode;if (!queue-front) {queue-front newNode;} }// Dequeue operation struct TreeNode* dequeue(struct Queue *queue) {if (!queue-front) return NULL;struct QueueNode *temp queue-front;struct TreeNode *treeNode temp-treeNode;queue-front queue-front-next;if (!queue-front) {queue-rear NULL;}free(temp);return treeNode; }// Check if the queue is empty int isQueueEmpty(struct Queue *queue) {return queue-front NULL; }// Main function struct ListNode** listOfDepth(struct TreeNode* tree, int* returnSize) {if (!tree) {*returnSize 0;return NULL;}// Allocate memory for result arraystruct ListNode** result (struct ListNode**)malloc(1000 * sizeof(struct ListNode*)); // Assuming max depth is 1000*returnSize 0;struct Queue *queue createQueue();enqueue(queue, tree);while (!isQueueEmpty(queue)) {int levelSize 0;struct ListNode *levelHead NULL, *levelTail NULL;struct Queue *tempQueue createQueue();// Process all nodes at the current levelwhile (!isQueueEmpty(queue)) {struct TreeNode *currentNode dequeue(queue);struct ListNode *newListNode (struct ListNode*)malloc(sizeof(struct ListNode));newListNode-val currentNode-val;newListNode-next NULL;if (!levelHead) {levelHead newListNode;} else {levelTail-next newListNode;}levelTail newListNode;levelSize;if (currentNode-left) enqueue(tempQueue, currentNode-left);if (currentNode-right) enqueue(tempQueue, currentNode-right);}// Append the levels linked list to the resultresult[*returnSize] levelHead;(*returnSize);// Swap queuesstruct Queue *swapTemp queue;queue tempQueue;free(swapTemp);}// Cleanupfree(queue);return result; }
http://www.w-s-a.com/news/36031/

相关文章:

  • 公司管理网站首页网站后台编辑框不显示
  • aspnet网站开发模板备案 网站建设方案书
  • 营销软件网站wordpress优秀的破解主题
  • 卧龙区网站建设国内漂亮网站欣赏
  • 服装 网站模板 wordpress石家庄做网站的公司有哪些
  • 惠州技术支持网站建设百度怎样注册免费的网站
  • 无锡哪里有做网站的公司泸州网站建设公司
  • 怎么进行网站推广jsp可以做那些小网站
  • 懒人手机网站wordpress修改秒速
  • WordPress资讯网站用花生壳做网站
  • 关于营销方面的网站建设网站怎么克隆
  • 站长网seo综合查询工具电商公司简介
  • 全能网站建设教程广告制作公司需要什么设备
  • 汽车行业做网站网站改版seo建议
  • 建设职业注册中心网站photoshop属于什么软件
  • 公司网站展示有哪些wordpress工单
  • iis新建网站seo是做什么工作的
  • 临沂网站建设厂家做外贸的女生现状
  • 电子商务网站建设实践临沂做网站的
  • 网站职能建设论文做外贸都有哪些网站
  • 网站建设项目需求分析房地产网站源码
  • 网站充值提现公司账务怎么做中国能建设计公司网站
  • 网站信息资源建设包括哪些网站网站做维护
  • 网站性能优化的方法有哪些建设施工合同网站
  • 郑州建设企业网站山西省住房和城乡建设厅网站
  • 做网站的去哪找客户正规制作网站公司
  • 网站代理访问是什么意思外国优秀设计网站
  • 合肥个人建站模板网络技术服务有限公司
  • 做网站什么公司好dw企业网站开发教程
  • 怎么做自己的个人网站宝安网站设计哪家最好