达人室内设计网官网入口温州网站排名优化

pingmian/2025/10/7 19:08:04/文章来源:
达人室内设计网官网入口,温州网站排名优化,厦门+外贸公司做网站,手机网站制作解决方案刷题的第四天#xff0c;希望自己能够不断坚持下去#xff0c;迎来蜕变。#x1f600;#x1f600;#x1f600; 刷题语言#xff1a;C / Python Day4 任务 ● 24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ● 面试题 02.07. 链表相交 ● 142.环形链表II 1 …刷题的第四天希望自己能够不断坚持下去迎来蜕变。 刷题语言C / Python Day4 任务 ● 24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ● 面试题 02.07. 链表相交 ● 142.环形链表II 1 两两交换链表中的节点 用虚拟头结点 伪代码 dummyhead-next head; // 设置一个虚拟头结点 cur dummyhead;// 将虚拟头结点指向head while (cur-next ! NULL cur-next-next ! NULL) // 注意不能颠倒顺序空指针不能访问-next {tmp1 cur-next; // 记录临时节点tmp2 cur-next-next-next;// 记录临时节点cur-next cur-next-next; // 步骤一cur-next-next tmp1; // 步骤二tmp1-next tmp2; // 步骤三cur cur-next-next; // cur移动两位 } return dummyhead-next;时间复杂度 O ( n ) O(n) O(n) 空间复杂度 O ( 1 ) O(1) O(1) C: class Solution { public:ListNode* swapPairs(ListNode* head) {ListNode* dummyhead new ListNode(0);dummyhead-next head;ListNode* cur dummyhead;while (cur-next ! NULL cur-next-next ! NULL){ListNode* tmp1 cur-next;ListNode* tmp2 cur-next-next-next;cur-next cur-next-next;cur-next-next tmp1;tmp1-next tmp2;cur cur-next-next;}head dummyhead-next;delete dummyhead;return dummyhead-next;} };Python class Solution(object):def swapPairs(self, head)::type head: ListNode:rtype: ListNodedummyhead ListNode(nexthead)cur dummyheadwhile cur.next ! None and cur.next.next ! None:tmp1 cur.nexttmp2 cur.next.next.nextcur.next cur.next.nextcur.next.next tmp1tmp1.next tmp2cur cur.next.nextreturn dummyhead.next2 删除链表的倒数第N个节点 思路 要删除倒数第n个节点,让fast移动n步然后让fast和slow同时移动直到fast指向链表末尾。删掉slow所指向的节点链表的删除操作应该是要让删的前一个节点指向要删节点的后一个节点所以应该先让fast移动n1步这样slow慢指针最后就是指向要删节点的前一个节点 伪代码 fast dummyhead; slow dummyhead; n; while (n-- fast ! NULL) {fast fast-next; } while (fast! NULL) {fast fast-next;slow slow-next; } slow-next slow-next-next; return dummyhead-next;C class Solution { public:ListNode* removeNthFromEnd(ListNode* head, int n) {ListNode* dummyhead new ListNode(0);dummyhead-next head;ListNode* fast dummyhead;ListNode* slow dummyhead;n;while (n-- fast ! NULL){fast fast-next;}while (fast ! NULL){fast fast-next;slow slow-next;}ListNode* tmp slow-next;slow-next slow-next-next;delete tmp;return dummyhead-next;} };Python: class Solution(object):def removeNthFromEnd(self, head, n)::type head: ListNode:type n: int:rtype: ListNodedummyhead ListNode(nexthead)fast dummyheadslow dummyheadn 1while n and fast ! None:n - 1fast fast.nextwhile fast ! None:slow slow.nextfast fast.nextslow.next slow.next.nextreturn dummyhead.next3 链表相交 思路 求两个链表交点的指针交点不是数值相等是指针相等 求出两个链表的长度并求出两个链表长度的差值让curA移动到和curB 末尾对齐的位置 此时比较curA和curB是否相同如果不相同同时向后移动curA和curB如果遇到curA curB则找到交点否则循环退出返回空指针。 伪代码 1curA headA; curB headB; 2求AB链表的长度 3curA headA; curB headB; 4保证A长度是最大的 5让curA移动到和curB 末尾对齐的位置 6比较curA和curB是否相同如果不相同同时向后移动curA和curB如果遇到curA curB则找到交点。否则循环退出返回空指针 C class Solution { public:ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {ListNode* curA headA;ListNode* curB headB;int lenA 0;int lenB 0;while (curA ! NULL)// 求链表A的长度{lenA;curA curA-next;}while (curB ! NULL)// 求链表B的长度{lenB;curB curB-next;}curA headA;curB headB;if (lenA lenB)// 让curA为最长链表的头lenA为其长度{swap(lenA, lenB);swap(curA, curB);}int gap lenA - lenB;// 求长度差// 让curA和curB在同一起点上末尾位置对齐while(gap--){curA curA-next;}while (curA ! NULL){ // 遍历curA 和 curB遇到相同则直接返回if (curA curB){return curA;}curA curA-next;curB curB-next;}return NULL;} };Python class Solution(object):def getIntersectionNode(self, headA, headB)::type head1, head1: ListNode:rtype: ListNodecurA headAcurB headBlenA 0lenB 0while curA ! None:lenA 1curA curA.nextwhile curB ! None:lenB 1curB curB.nextcurA headAcurB headBif lenA lenB:lenA, lenB lenB, lenAcurA, curB curB, curAgap lenA - lenBfor i in range(gap):curA curA.nextwhile curA ! None:if curA curB:return curAcurA curA.nextcurB curB.nextreturn None4 环形链表II 给定一个链表返回链表开始入环的第一个节点。 如果链表无环则返回 null。 为了表示给定链表中的环使用整数 pos 来表示链表尾连接到链表中的位置索引从 0 开始。 如果 pos 是 -1则在该链表中没有环。 思路 1判断链表是否有环 2如果有环如何找到这个环的入口 如何判断链表有环 使用快慢指针法定义fast和slow指针从头节点出发快指针每次移动两个节点慢指针每次移动一个节点如果fast和slow指针在途中相遇说明这个链表有环 如果有环如何找到这个环的入口 相遇时slow指针走过的节点数 x y x y xy fast指针走过的节点数 x y n ( y z ) x y n(y z) xyn(yz) ( x y ) ∗ 2 x y n ( y z ) (xy)*2x y n(y z) (xy)∗2xyn(yz) x n ( y z ) − y xn(yz)-y xn(yz)−y 找环形的入口就是求xx表示头结点到环形入口节点的的距离。 x ( n − 1 ) ( y z ) z x(n-1)(yz)z x(n−1)(yz)z注意这里n一定是大于等于1的因为 fast指针至少要多走一圈才能相遇slow指针 当 n为1的时候公式就化解为 x z x z xz 从头结点出发一个指针从相遇节点 也出发一个指针这两个指针每次只走一个节点 那么当这两个指针相遇的时候就是 环形入口的节点。 在相遇节点处定义一个指针index1在头结点处定一个指针index2。让index1和index2同时移动每次移动一个节点 那么他们相遇的地方就是 环形入口的节点。 伪代码 1fast和slow指针指向头节点 2循环当fast和fast-next等于NULL循环终止。slow走一步,fast走两步 3当两指针相遇index1 fast,index2 head。两index同时向后移如果相等返回环的入口 4找不到返回NULL C class Solution { public:ListNode *detectCycle(ListNode *head) {ListNode* fast head; // fast和slow指针指向头节点ListNode* slow head;while (fast ! NULL fast-next ! NULL) // 循环当fast和fast-next等于NULL循环终止{slow slow-next; // slow走一步fast fast-next-next;// fast走两步if (slow fast) // 当两指针相遇index1 fast,index2 head。两index同时向后移如果相等返回环的入口{ListNode* index1 fast;ListNode* index2 head;while (index1 ! index2){index1 index1-next;index2 index2-next;}return index1;}}return NULL;} };Python class Solution(object):def detectCycle(self, head)::type head: ListNode:rtype: ListNodefast headslow headwhile fast ! None and fast.next ! None:slow slow.nextfast fast.next.nextif slow fast:index1 fastindex2 headwhile index1 ! index2:index1 index1.nextindex2 index2.nextreturn index2return None鼓励坚持四天的自己

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/89509.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站对公司的意义接订单去哪个网站

提到C/C语言很多初学者都觉得,学到中间就进行不下去了,但是如果你最难啃的那几块硬骨头拿下,一切都会顺畅许多,而且C诞生很久了,因此有大量可以免费阅读编程文档。近日,在Quora上发现一份免费的C 资料列表&…

东莞网络营销型网站开发商城网站多少钱

https://www.elsevier.com/authors/author-schemas/latex-instructions

榆林市行政效能建设网站专门做封面的网站

现在我在听的歌,名叫《Loser》。相信你可能听过,Bigbang的。里面有句歌词是这样的:把手伸了出来,却没有任何人握住我的手。不管生活怎样,希望看到这篇文章的你,可以带着自己和带着自己的倔强,一…

做网站的开场白北京融安特智能科技营销型网站

资产列表 资产列表可展示资产树和类型树,可以查看添加的所有资产 新增资产也是在此页面 在资产树上面右键可以创建新的子节点 比如这里我新建了个“腾讯云”节点 选中腾讯云节点,点击中间的“创建”按钮,新增资产 选择你的主机类型,我这是Linux 填写你资产的名称、IP必…

淘宝客的网站怎么做开源免费cms可商业用

菱形继承的问题,是由多重继承的父类祖先是同一个父类导致的。如下面的情况: 菱形继承,会导致同名成员的二义性问题和数据冗余问题,用下面的代码来测试: class A { public:int _a; }; // class B : public A class B :…

成都建设网站费用广告网站 源码

前言 呵呵 最近想要 做一个 mongo 低版本的客户端读取高版本的服务端传递过来的数据造成的一个错误的时候, 出现了这样的问题 引入了 mongo-java-driver 之后, 使用相关 api 的时候会触发 com.mongo.internal.connection.BaseCluser 的初始化, 其依赖的 Loggers 间接的依赖…

网站的系统建设方式有哪些内容一套会员管理系统多少钱

1、 MSDN原版系统(我告诉你) [软件、镜像下载地址](https://www.imsdn.cn/)2、 HelloWindows.cn 精校 完整 极致 Windows系统下载仓储站 镜像、软件下载地址 3、系统库 镜像下载地址 4、 山己几子木 镜像下载地址

个人网站每年要多少钱拓者设计吧效果图

第一次使用react和antd组件库&#xff0c;记录过程中实用的几个组件和使用方法&#xff1b; 项目中依赖版本 "react": "^18.2.0", "antd": "^5.3.0",Input关闭历史填充 <Input placeholder"请输入ID/名称" allowClear a…

星级酒店网站建设公司企业微网站与手机微信

Vue构建项目断点调试过程问题总结 问题背景 前端开发过程中&#xff0c;碰到问题时需要debug&#xff0c;快速分析和解决问题。一般除了console.log的方式打印日志外&#xff0c;更方便直观的方式就是打断点debug。本文对vue项目debug过程可能碰到的问题进行总结&#xff0c;…

iis添加网站建设中网站建设以后主要做什么

Mocha Pro 2022 mac是一款专业的三维摄像机反求摩卡跟踪插件&#xff0c;同时也是一款视频后期效果制作工具&#xff0c;Mocha Pro 2022下载能够给数字媒体艺术家提供强大的、直观的和创新的追踪解决方案用简化的界面、加速的工作流程以及轻松追踪和操作镜头的强大性&#xff0…

虚拟主机 2个网站微信小程序 网站建设

问题描述 给定整数 n n n&#xff0c;在 O ( 1 ) O(1) O(1) 时间求出 n n n 有多少个因子。 问题背景 \qquad 目前网上求因子个数的方法的时间复杂度都是 O ( n ) O(\sqrt{n}) O(n ​) 级别的&#xff0c;但我认为一定有一种方法可以在 O ( 1 ) O(1) O(1) 的时间求出 n…

网站维护中要多久才能重新进入中国纪检监察报电子版2021

Kafka3.0之前依赖于zookeeper Zookeeper开源&#xff0c;分布式的架构&#xff0c;提供协调服务&#xff08;apache项目&#xff09; 基于观察者模式设计的分布式服务管理架构 存储和管理数据&#xff0c;分布式节点上的服务接受观察者的注册&#xff0c;一旦分布式节点上的…

设计对网站的重要性中国软件这个公司怎么样

DIY电脑一直都是电脑爱好者非常喜欢的&#xff0c;对于电脑爱好者来说&#xff0c;通过自己动手DIY组装电脑&#xff0c;不仅可以更为深刻的认识硬件&#xff0c;了解电脑主机内部结构&#xff0c;还能够学习到安装系统等知识&#xff0c;从中可以带来很多乐趣。今天我们为大家…

造价网站wordpress手机版受钱吗

设置cmd窗口的标题 1、打开.bat文件编辑 2、输入命令&#xff1a; title&#xff08;窗口标题&#xff09; 比如&#xff1a;title计算机 3、保存 4、双击运行.bat文件 &#xff0c;窗口标题改变成功 改变窗口大小 1、打开.bat文件编辑 2、输入命令&#xff1a; mode co…

前端进入网站建设公司怎么样在线编辑网页

1.查看centos内核版本 uname -a uname -r2.安装之前的准备工作 安装RabbitMQ必装Erlang(RabbitMQ官网添加链接描述) 2.1.Erlang简介 Erlang是一种通用的面向并发的编程语言&#xff0c;它由瑞典电信设备制造商爱立信所辖的CS-Lab开发&#xff0c;目的是创造一种可以应对…

如何在线上销售自己的产品优化师和运营区别

1423. 可获得的最大点数 原题地址&#xff1a; 力扣每日一题&#xff1a;可获得的最大点数 几张卡牌 排成一行&#xff0c;每张卡牌都有一个对应的点数。点数由整数数组 cardPoints 给出。 每次行动&#xff0c;你可以从行的开头或者末尾拿一张卡牌&#xff0c;最终你必须正好拿…

凡科做网站类型应该做哪个小程序和网站的区别

有序集合类型 (Sorted Set) 相比于集合类型多了一个排序属性 score(分值),对于有序集合 ZSet 来说,每个存储元素相当于有两个值组成的,一个是有序结合的元素值,一个是排序值。有序集合的存储元素值也是不能重复的,但分值是可以重复的。 当我们把学生的成绩存储在有序集…

网站建设首选原创先锋产品推销方案

优化 Cocos Creator 包体体积是一个重要的任务&#xff0c;可以通过以下几个方面进行优化&#xff1a; 图片文件体积优化&#xff1a; 压缩图片&#xff1a;使用工具如 TinyPNG、ImageOptim 等对图片进行压缩&#xff0c;减小文件大小而保持可接受的质量。图片格式选择&#…

12306网站开始是谁开发的企业门户 登录

[导读]微信再次迎来历史性大更新&#xff0c;小程序终于展露腾讯野心&#xff01;微信再次迎来历史性大更新&#xff0c;小程序终于展露腾讯野心!...微信小程序桌面在昨日1月22日晚&#xff0c;微信更新7.0.3版本&#xff0c;腾讯在App Store中只表示&#xff1a;本次是一次小更…

农产品网站管理员怎么做猎头公司收费标准

责任链设计模式详解 一、定义 责任链设计模式&#xff08;Chain of Responsibility Pattern&#xff09;是一种行为设计模式&#xff0c;它允许多个对象有机会处理请求&#xff0c;从而避免请求的发送者和接收者之间的耦合。这种模式将这些对象连接成一条链&#xff0c;并沿着…