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

简述如何优化网站的方法如何重新运行wordpress

简述如何优化网站的方法,如何重新运行wordpress,鄱阳网站建设,站群cms单链表OJ题#xff08;文字解读 图解#xff09; 1. 移除链表元素2. 反转链表3. 链表的中间结点4. 返回倒数第 k 个节点5. 合并两个有序链表 1. 移除链表元素 给你一个链表的头节点 head 和一个整数 val #xff0c;请你删除链表中所有满足 Node.val val 的节点#xff… 单链表OJ题文字解读 图解 1. 移除链表元素2. 反转链表3. 链表的中间结点4. 返回倒数第 k 个节点5. 合并两个有序链表 1. 移除链表元素 给你一个链表的头节点 head 和一个整数 val 请你删除链表中所有满足 Node.val val 的节点并返回 新的头节点 。 OJ链接 struct ListNode* removeElements(struct ListNode* head, int val)这题当然可以暴力遍历将值一一对比相等的删除并重新链接。但还有更优的思路 定义两个指针(slow,fast);fast先走如果fast指向的val和其相等则让slow指向fast的下一个后fast再走如果不相等则让slow指向fast指向的位置后发射台再走最后再分一些特殊情况。 struct ListNode* removeElements(struct ListNode* head, int val) {struct ListNode* slow head;struct ListNode* fast head;//头为空直接返回空if(head NULL)return NULL;while(fast){if(fast-val val){slow-next fast-next;fast fast-next;}else{slowfast;fastfast-next;}} //当头结点就是val时并且头结点下一个结点为空直接返回空if(head-val valhead-nextNULL)return NULL;//当头结点就是val时并且头结点下一个结点不去为空直接返回头节点的下一个节点else if(head-val valhead-next!NULL)return head-next;else return head; }最后一定要分情况不然OJ有些测试用例通过不了。 2. 反转链表 给你单链表的头节点 head 请你反转链表并返回反转后的链表。 OJ链接 struct ListNode* reverseList(struct ListNode* head)这题的最优解: 创建3个指针第一个指针n1指向空第二个指针n2指向头节点第三个指针n3指向头节点的下一个节点先将n2指向n1再让n1指向n2n2指向n3再循环往后走 struct ListNode* reverseList(struct ListNode* head) {struct ListNode* n1 NULL;struct ListNode* n2 head;while(n2){struct ListNode* n3 n2-next;n2-next n1;n1 n2;n2 n3;}return n1; }最后一次当n3赋值给n2时n2指向空所以循环结束条件n2!NULL。如果将n3放在循环外创建可能会造成空指针因为数组可能只有一个元素或者就没有元素这样n3就没有用了。 3. 链表的中间结点 给你单链表的头结点 head 请你找出并返回链表的中间结点。 如果有两个中间结点则返回第二个中间结点。 OJ链接 struct ListNode* middleNode(struct ListNode* head) 这题还是快慢指针问题: 让一个指针从头节点开始一次走一步让第二个指针从头节点开始一次走两步走到尾时慢指针刚好走到中间节点。 struct ListNode* middleNode(struct ListNode* head) {struct ListNode* slow head;struct ListNode* fast head;while(fast fast-next){fast fast-next-next;slow slow-next;}return slow; }当节点个数为奇数个时循环终止条件为fast-next ! NULL当节点个数为偶时循环终止条件为fast ! NULL将两种情况合并。 4. 返回倒数第 k 个节点 实现一种算法找出单向链表中倒数第 k 个节点。返回该节点的值。 OJ链接 int kthToLast(struct ListNode* head, int k)这是一道经典的面试题最优思路为:先让一个指针从头节点走k步再让一个指针从头节点开始和前一个指针同时走当走到尾慢指针指向的就是我们要的。 int kthToLast(struct ListNode* head, int k){struct ListNode* slow head;struct ListNode* fast head;while(k--){fast fast-next;}while(fast){fast fast-next;slow slow-next;}return slow-val; }循环结束条件为当fast NULL. 5. 合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 OJ链接 struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2);解题思路 此题可以先创建一个空链表然后依次从两个有序链表中选取最小的进行尾插操作进行合并。 struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2) {struct ListNode* head NULL,*tail NULL;//特殊情况先出if(list1 NULL){return list2;}if(list2 NULL){return list1;}while(list1 list2){if(list1-val list2-val){//第一次插入if(tail NULL){head tail list1;}else{//后续取较小的尾插tail-next list1;tail tail-next; }list1 list1-next;}else{if(tail NULL){head tail list2;}else{tail-next list2;tail tail-next; }list2 list2-next;}}//当list2走完list1还有节点时直接尾插if(list1){tail-next list1;}//当list1走完list2还有节点时直接尾插if(list2){tail-next list2;}return head; }单链表没有这么简单目前程度我做不来难题后续有机会再更新.
http://www.pierceye.com/news/684448/

相关文章:

  • 阳江市建设路龙源学校网站物流公司 网站模板
  • 迪庆州建设局网站做营销网站建设挣钱吗
  • 定制网站类似wordpress 简单
  • 数据库对于做网站的重要性商城模板网站模板
  • 梧州高端网站建设服务企业网站建设源码
  • 团购网站优化德州seo排名
  • 网站首页引导页中文简洁网站设计图
  • 娱乐网站排行榜在线商城网站开发代码
  • 手机网站设计通用尺寸上海外贸人才网
  • 智慧团建网站密码格式高端终端网站设计类网站
  • 福田网站设计网站建设平台方案
  • 荆州企业网站建设天津网站优化步骤
  • 网站怎么怎么做关键字长沙网站建设q.479185700強
  • 网站备案万网excel做网站
  • 十堰网站建设怎么做桐乡网站设计
  • 织梦商城网站模板网站设计的逻辑结构
  • 网站编辑器福建省工程建设信息官方网站
  • 网站的域名能修改么做设计网站的工作
  • 珠海选车牌号网站系统icp对网站内容
  • 东莞购物网站如何建立免费个人网站
  • 网站个别页面做seo建立有效的什么机制
  • 学校网站建设模板wordpress 年月归档
  • 凡科做的网站行不行京东慧采入驻条件及费用2023年
  • 汽车网站建设页面网站建设营销公司
  • 可以写代码的网站有哪些问题微信公众号的推广
  • 网站建设项目怎么写新网站一般多久收录
  • 什么网站可以免费发广告合肥做网站一般多少钱
  • 企业网站优化的方式大安市网站
  • 镇江专业网站建设制作wordpress调查插件
  • 桂林网站制作多少钱最好的网站开发公司