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

网站开发入门书籍推荐wordpress怎么提权

网站开发入门书籍推荐,wordpress怎么提权,网站建设重点,东莞网站建设设计公司这道题我是用最淳朴最简单的思路去做的,用一个while循环持续地将当前遍历到的最小值加入到合并链表中,while循环中使用一个for循环遍历整个指针数组,将其中的最小值和对应下标记录下来,并将其值加入到合并链表中,同时对…


这道题我是用最淳朴最简单的思路去做的,用一个while循环持续地将当前遍历到的最小值加入到合并链表中,while循环中使用一个for循环遍历整个指针数组,将其中的最小值和对应下标记录下来,并将其值加入到合并链表中,同时对应的那条链表的指针后移一位。这里我们需要用到一个额外的辅助变量flag,在每一次执行for循环之前需要初始化为false,默认为所有链表都已经遍历到末尾,在for循环中,如果遇到了还没遍历到末尾的链表,则flag会被更新为true,该标志位的作用就是用来标记所有链表是否遍历结束,如果遍历结束就直接跳出外层的while循环。

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:ListNode* mergeKLists(vector<ListNode*>& lists) {ListNode* result = new ListNode();ListNode* temp = result;bool flag = lists.size() == 0 ? false : true;while(flag){int min_value = INT_MAX;int min_index = INT_MAX;flag = false;for(int i = 0; i < lists.size(); ++i){if(!lists[i]){    //若当前遍历到的链表已经遍历到末尾,则直接跳过当前链表flag = false || flag;continue;   } flag = true;  //尚有链表没有遍历结束if(lists[i] -> val < min_value){min_value = lists[i] -> val;  //更新当前节点的最小值min_index = i;   //更新最小值的下标}}if(flag){temp -> next = new ListNode(min_value);cout << min_value << endl;temp = temp -> next;lists[min_index] = lists[min_index] -> next;}}return result -> next;}
};

但是这么做的耗时有点太长了,AC之后去看了下灵神的题解,感觉他的第一种思路特别通俗易懂,主要是借用了数据结构本身的特性,利用优先队列进行自动排序,而无需手动排序,因此我们只需要不断地将节点加入到优先队列中即可,这道题需要我们自定义一个排序规则,以对链表节点进行排序,当我们把优先队列的队头元素(队列内的最小值)取出后,我们需要判断队头元素的下一个节点是否为空,若不为空才将下一个节点加入到优先队列中。当所有链表的所有节点都被加入到优先队列中后,我们直接退出循环。

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:ListNode* mergeKLists(vector<ListNode*>& lists) {ListNode* result = new ListNode();ListNode* temp = result;// 使用Lambda表达式定义比较规则auto compare = [] (const ListNode* a, const ListNode* b) {return a -> val > b -> val;    //较小的优先级较高};priority_queue<ListNode*, vector<ListNode*>, decltype(compare)> q;   //优先队列,存储值较小的排前面for(auto head : lists){if(head) q.push(head);  //将所有的非空链表头节点入队}while(!q.empty()){temp -> next = new ListNode(q.top() -> val);cout << q.top() -> val << endl;if(q.top() -> next)  //下个节点不为空才入队q.push(q.top() -> next);q.pop();temp = temp -> next;}return result -> next;}
};

文章转载自:

http://MyzQJQRQ.swsrb.cn
http://nQqKKxmV.swsrb.cn
http://w7SBm5RB.swsrb.cn
http://SZQY0VoZ.swsrb.cn
http://Hxi37vDr.swsrb.cn
http://9pzJkCpb.swsrb.cn
http://KX0qdEfg.swsrb.cn
http://mLMcTjsE.swsrb.cn
http://vfHsxLh5.swsrb.cn
http://lRfi3b5k.swsrb.cn
http://kfaEPjua.swsrb.cn
http://OoboZZ9T.swsrb.cn
http://sWaICxrB.swsrb.cn
http://W3HyA5BL.swsrb.cn
http://yiSZPSmb.swsrb.cn
http://rDouCnsw.swsrb.cn
http://SbylmZtD.swsrb.cn
http://7zBcECZK.swsrb.cn
http://4UCDhiCS.swsrb.cn
http://jb8e7CsP.swsrb.cn
http://i1pcpmmY.swsrb.cn
http://gaaPsnC2.swsrb.cn
http://N2x5dg87.swsrb.cn
http://PCj4TI25.swsrb.cn
http://vhPqQcOA.swsrb.cn
http://GDnvWCQF.swsrb.cn
http://90cWA9sx.swsrb.cn
http://yewhFyds.swsrb.cn
http://GVJFVlWG.swsrb.cn
http://2F2LTz9K.swsrb.cn
http://www.dtcms.com/wzjs/751427.html

相关文章:

  • 广州南沙建设交通网站做网站收费
  • 北京网站建设取名字大全免费查询
  • 西宁市城东区住房和建设局网站少儿编程加盟费一般多少钱
  • 电子商务网站的建站流程制作企业网站费用明细
  • WordPress能够做小说网站吗wordpress 引用 格式
  • 北京建设协会网站网页设计大作业
  • 临湘网站wordpress能用代码吗
  • 国外网站设计的网站phpstudy如何建设网站
  • 网站建设教程学校网站设计接单
  • 做视频网站需要什么证件网络推广专员好做吗
  • 建设网站的页面设计苏州网站设计电话
  • 株洲网站排名无锡新吴区住房建设交通局网站
  • 世界杯直播观看网站三大框架网站开发
  • 企业网站的基本类型包括wordpress主题 摄影师
  • 网站建设管理工作经验介绍网站开发专家:php+mysql网站开发技术与典型案例导航
  • 越秀微网站建设婚纱网站策划书模板
  • 用dw制作视频网站开源小程序模板
  • 龙江网站开发网站备案管局审核
  • 上海网站备案查询微信公众号平台入口官网
  • 网站运营主要做什么wordpress print_r
  • 2021不良正能量免费网站网站排名优化软件哪家好
  • 公司网站设计意见收集自己给公司做网站
  • 网站挂标 怎么做阿里巴巴电子商务网站
  • 阿里巴巴网站策划书企业网站建设报告
  • 免费网站设计软件wordpress自动标签
  • 曲沃网站开发网络推广的几种主要方法
  • asp做的手机网站网页设计表单制作代码
  • 制作企业网站怎么报价南昌网站建设推广专家
  • 快速做网站公司哪家专业营销网站建设服务
  • 深圳罗湖做网站的公司哪家好wordpress文章保存图片