OJ:链表的中间结点

876. 链表的中间结点 - 力扣(LeetCode)

思路 

思路:首先最容易想到的思路是什么呢,就是先遍历一遍链表,用一个值count来记录链表的长度,然后我们运用除法,/2,结果是几,就是第几个是中间节点,但是这种方法其实是需要两个for循环的。还有一个思路,就是我们的快慢指针方法,这里我们用快慢指针的方法。

 

易错点 

 这里我觉得在声明fast和slow时,容易出错,还有fast&&fast->next时容易出错,首先第一个出错点我觉得在写那个slow时可能会忘记加*,对于while循环判断fast&&fast->next这里呢,这里可能会分不清用与还是或,这里我们想只要有一个条件不满足就直接跳出循环,所以只要有一个为假就跳出循环,所以用与就是&&,如果用或(||)的话,就是得满足两个条件才能跳出循环,还有就是fast和fast->next不能互换位置,否则假如fast为NULL,那么怎么能取到fast->NULL呢。

代码 


/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/typedef struct ListNode ListNode;
struct ListNode* middleNode(struct ListNode* head) {ListNode* fast,*slow;fast=slow=head;while(fast&&fast->next){slow=slow->next;fast=fast->next->next;}return slow;
}

 

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

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

相关文章

【C++干货基地】揭秘C++11常用特性:内联函数 | 范围for | auto自动识别 | nullptr指针空值

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 引入 哈喽各位铁汁们好啊,我是博主鸽芷咕《C干货基地》是由我的襄阳家乡零食基地有感而发,不知道各位的…

平台工程: 用Backstage构建开发者门户 - 2

本文介绍了如何使用开源Backstage构建自己的开发者门户,并基于此实践平台工程。本系列共两篇文章,这是第二篇。原文: Platform Engineering: Building Your Developer Portal with Backstage — Part 2 在本教程第一部分中我们了解了Backstage这个用于构…

外贸网站模板建站

测绘检测wordpress外贸主题 简洁实用的wordpress外贸主题,适合做测绘检测仪器设备的外贸公司使用。 https://www.jianzhanpress.com/?p5337 白马非马衣服WordPress外贸建站模板 白马非马服装行业wordpress外贸建站模板,适用于时间服装企业的官方网站…

Git 如何上传本地的所有分支

Git 如何上传本地的所有分支 比如一个本地 git 仓库里定义了两个远程分支,一个名为 origin, 一个名为 web 现在本地有一些分支是 web 远程仓库没有的分支,如何将本地所有分支都推送到 web 这个远程仓库上呢 git push web --all

pytorch loss函数整理

变量名解释 logits:未经过normalize(未经过激活函数处理)的原始分数,例如一个mlp将特征映射到num_target_class维的输出tensor就是logits。 probs:probabilities的简写,logits经过sigmoid函数,…

Doris实战——银联商务实时数仓构建

目录 前言 一、应用场景 二、OLAP选型 三、实时数仓构建 四、实时数仓体系的建设与实践 4.1 数仓分层的合理规划 4.2 分桶分区策略的合理设置 4.3 多源数据迁移方案 4.4 全量与增量数据的同步 4.5 离线数据加工任务迁移 五、金融级数仓稳定性最佳实践 5.1 多租户资…

Jenkins的Pipeline概念

文章目录 Pipeline什么是Jenkins Pipeline声明式和脚本式Pipeline语法为何使用PipelinePipeline概念PipelineNodeStageStep Pipeline语法概述声明式Pipeline脚本式Pipeline Pipeline示例 参考 Pipeline 什么是Jenkins Pipeline Jenkins Pipeline是一套插件,它支持…

【Django】model模型—模型继承

Django中三种继承风格 抽象基类:仅将父类用于子类公共信息的载体,这样的父类永远都不会单独使用。多表继承:继承了一个模型(可能来源其它应用),且想要每个模型都有对应的数据表。代理模型:只想…

JProfiler相关问题及答案(2024)

1、JProfiler是什么及其用途 JProfiler是一款功能丰富的商业Java性能剖析(profiling)工具,它主要面向开发者和性能分析师,用于监测和分析Java应用程序的运行时行为。以下是对JProfiler的一些详细介绍和它的主要用途: …

webpack的一些知识

核心 webpack 是用来搭建前端工程的它运行在node环境中,它所做的事情,简单来说,就是打包具体来说,就是以某个模块作为入口,根据入口分析出所有模块的依赖关系,然后对各种模块进行合并、压缩,形…

洛谷P1157 组合的输出

深搜板子加一点点修改&#xff0c;适合初学者体会深搜&#xff0c;具体看代码 题目链接 ACcode #include<bits/stdc.h>using namespace std;int a, b;bitset<50>vis;//剪枝 int d[50];void dfs(int x) {if (x b 1) {for (int i 1;i < b;i)cout << se…

HBM(High Bandwidth Memory)

选择正确的高带宽内存 构建高性能芯片的选择越来越多&#xff0c;但附加内存的选择却几乎没有变化。为了在汽车、消费和超大规模计算中实现最大性能&#xff0c;选择取决于一种或多种 DRAM&#xff0c;而最大的权衡是成本与速度。 尽管多年来人们一直在努力用更快、更便宜或更…

Linux:kubernetes(k8s)搭建mater节点(kubeadm,kubectl,kubelet)(2)

安装k8有多种方式如&#xff1a; minikube kubeadm 二进制安装 命令行工具 我这里就使用kubeadm进行安装 环境 3台centos7 master ip &#xff1a;192.168.113.120 2G运存 2内核 node1 ip &#xff1a;192.168.113.121 2G运存 2内核 node2 ip &#xff1a;192.168.1…

重构与设计模型的完美融合:构建稳定可扩展系统的关键步骤

在软件开发的漫长旅程中&#xff0c;系统的稳定性和可扩展性一直是开发者们追求的目标。为了实现这一目标&#xff0c;重构和设计模型成为了不可或缺的两个关键元素。本文将探讨如何通过重构&#xff0c;使系统更稳定、更具可扩展性&#xff0c;并深入研究如何将重构与设计模型…

JavaEE:多线程(3):案例代码

目录 案例一&#xff1a;单例模式 饿汉模式 懒汉模式 思考&#xff1a;懒汉模式是否线程安全&#xff1f; 案例二&#xff1a;阻塞队列 可以实现生产者消费者模型 削峰填谷 接下来我们自己实现一个阻塞队列 1.先实现一个循环队列 2. 引入锁&#xff0c;实现线程安全 …

运用qsort函数进行快排并使用C语言模拟qsort

qsort 函数的使用 首先qsort函数是使用快速排序算法来进行排序的&#xff0c;下面我们打开官网来查看qsort是如何使用的。 这里有四个参数&#xff0c;首先base 是至待排序的数组的首元素的地址&#xff0c;num 是值这个数组的元素个数&#xff0c;size 是指每个元素的大小&am…

Python猜数字小游戏

下面这段代码是一个简单的数字猜测游戏&#xff0c;其中计算机已经提前计算出了414 // 23的结果并存储在变量num中。然后&#xff0c;程序会提示用户来猜测这个结果。 以下是代码的主要步骤和功能&#xff1a; 初始化&#xff1a; num 414 // 23&#xff1a;计算414除以23的整…

Linux:各目录含义

简介 学习Linux各目录含义之前&#xff0c;我们首先要了解一下Filesystem Hierarchy Standard&#xff08;文件系统层次结构标准&#xff09;。 FHS FHS&#xff0c;即文件系统层次结构标准&#xff08;Filesystem Hierarchy Standard&#xff09;&#xff0c;是Linux和类Un…

深入了解Redis:配置文件、动态修改和安全设置

Redis 是一个开源的内存中数据结构存储系统&#xff0c;它可以用作数据库、缓存和消息中间件。在使用 Redis 时&#xff0c;了解其配置选项是至关重要的。本文将详细介绍 Redis 的配置文件和常用配置项&#xff0c;并提供一些示例来说明如何设置和修改这些配置。 Redis 配置文…

基于stm32F103的座面声控台灯

1.基本内容&#xff1a; 设计一个放置在桌面使用的台灯&#xff0c;使用220v交流电供电。具备显示屏能够实时显示日期&#xff08;年、月、日和星期&#xff09;&#xff0c;时间&#xff08;小时、分钟、秒&#xff09;和温度&#xff08;摄氏度&#xff09;&#xff1b;能够通…