hot100:鏈表倒數k個節點- 力扣(LeetCode)

題目:

實現一種算法,找出單向鏈表中倒數第 k 個節點。返回該鏈表中倒數第k個節點。

示例一:

輸入:{1,2,3,4,5},2

返回值:{4,5}

說明:返回倒數第2個節點4,系統會打印后面所有的節點來比較。

示例二:

輸入:{2},8

返回值:{}

思路如下:

用雙指針,可省去統計鏈表長度操作,算法流程為:

  1. 初始化雙指針 pre , cur 都指向頭節點 head ;

  2. 先令 cur 走 k 步,此時 pre , cur 的距離為 k ;

  3. 令 pre , cur 一起走,直到 cur 走過尾節點時跳出,此時 pre 指向「倒數第 k 個節點」,返回之即可;

注意:

1.處理 k <= 0

if k <= 0 or not pHead:return None

2.檢查快指針移動時的越界

for _ in range(k):if not cur:  # 此時 cur 為 None,但循環尚未完成 k 次return Nonecur = cur.next
題解如下:
class Solution:def FindKthToTail(self , pHead, k):""":type:  pHead: ListNode, k: int:rtype: ListNode"""# write code hereif k <=0 or not pHead:return Nonepre, cur = pHead, pHeadfor _ in range(k):if not cur:return Nonecur = cur.nextwhile cur:pre, cur = pre.next, cur.nextreturn pre

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/78453.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/78453.shtml
英文地址,請注明出處:http://en.pswp.cn/web/78453.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Spring AI 實戰:第十一章、Spring AI Agent之知行合一

引言:智能體的知行辯證法 “知為行之始,行為知之成”,王陽明的哲學智慧在AI時代煥發光彩。智能體(LLM Agent)的進化之路,正是"認知-決策-執行"這一閉環的完美詮釋: 知明理:融合大語言模型的推理能力與知識圖譜的結構化認知行致用:基于ReAct模式的動態工具調…

365打卡第R6周: LSTM實現糖尿病探索與預測

&#x1f368; 本文為&#x1f517;365天深度學習訓練營中的學習記錄博客 &#x1f356; 原作者&#xff1a;K同學啊 &#x1f3e1; 我的環境&#xff1a; 語言環境&#xff1a;Python3.10 編譯器&#xff1a;Jupyter Lab 深度學習環境&#xff1a;torch2.5.1 torchvision0…

W-TinyLFU緩存驅逐算法解析

文章目錄 1. 背景與概述1.1 什么是緩存驅逐算法1.2 W-TinyLFU 的定義與價值 2. 核心思想與設計理念2.1 時間局部性與頻率局部性的結合2.2 高效的頻率統計2.3 窗口機制的引入 3. 架構設計與組件3.1 整體架構3.2 窗口緩存&#xff08;Window Cache&#xff09;3.3 主緩存&#xf…

[特殊字符] 人工智能大模型之開源大語言模型匯總(國內外開源項目模型匯總) [特殊字符]

Large Language Model (LLM) 即大規模語言模型&#xff0c;是一種基于深度學習的自然語言處理模型&#xff0c;它能夠學習到自然語言的語法和語義&#xff0c;從而可以生成人類可讀的文本。 所謂 "語言模型"&#xff0c;就是只用來處理語言文字&#xff08;或者符號…

文章記單詞 | 第60篇(六級)

一&#xff0c;單詞釋義 liar&#xff1a;英 [?la??(r)]&#xff1b;美 [?la??r]&#xff1b;n. 說謊者verbal&#xff1a;英 [?v??bl]&#xff1b;美 [?v??rbl]&#xff1b;adj. 言語的&#xff1b;文字的&#xff1b;口頭的&#xff1b;動詞的comprehension&…

AI日報 · 2025年04月30日|OpenAI 回滾 GPT-4o 更新以解決“諂媚”問題

過去24小時&#xff0c;全球人工智能領域持續快速發展。從模型行為調整到平臺工具更新&#xff0c;再到行業安全規范的探討&#xff0c;以下是為您精選的重點動態&#xff1a; 1、OpenAI 回滾 GPT-4o 更新以解決“諂媚”問題 針對用戶反饋最新版 GPT-4o 模型表現出過度“諂媚…

Linux54 源碼包的安裝、修改環境變量解決 axel命令找不到;getfacl;測試

始終報錯 . 補充鏈接 tinfo 庫時報錯軟件包 ncurses-devel-5.9-14.20130511.el7_4.x86_64 已安裝并且是最新版本 沒有可用軟件包 tinfo-devel。 無須任何處理 make LDLIBS“-lncurses"報錯編譯時報錯make LDLIBS”-lncurses" &#xff1f; /opt/rh/devtoolset-11/roo…

FPGA----基于ZYNQ 7020實現EPICS通信系統

1、本實驗過程來自博b站大神《神電測控》&#xff0c;原文地址&#xff1a; EPICS實戰(上位機篇)&#xff1a;基于LV ZYNQ實現的EPICS通信系統(大物理) - 嗶哩嗶哩https://www.bilibili.com/opus/933476043369480224EPICS實戰(下位機篇)&#xff1a;基于LV ZYNQ實現的EPICS通信…

實驗四 增強型可靠文件傳輸系統

一、實驗目的和任務 掌握基于隊列的多文件傳輸機制理解斷點續傳的實現原理學習文件傳輸完整性保障方法 二、實驗內容 基礎功能驗證 單文件傳輸功能測試服務器狀態監控測試傳輸日志記錄驗證 新增功能實現 多文件隊列傳輸功能斷點續傳支持 三、實驗步驟 4.1 客戶端功能擴…

網絡Tips20-003

1.E1載波的控制開銷占2/32*100%6.25%&#xff0c;E1載波的基本幀傳送時間是125uS。 2.計算機在一個指令周期的過程中&#xff0c;為從內存讀取指令操作碼&#xff0c;首先要將.程序計數器(PC)的內容送到地址總線上 3.3DES算法:密碼學中&#xff0c;3DES是三重數據加密算法通稱…

【MySQL】索引(重要)

目錄 一、索引本質&#xff1a; 索引的核心作用 索引的優缺點 二、預備知識&#xff1a; 硬件理解&#xff1a; 軟件理解&#xff1a; MySQL與磁盤交互基本單位&#xff1a; 三、索引的理解&#xff1a; 理解page&#xff1a; 單個page&#xff1a; 多個page&#x…

【深入淺出MySQL】之數據類型介紹

【深入淺出MySQL】之數據類型介紹 MySQL中常見的數據類型一覽為什么需要如此多的數據類型數值類型BIT&#xff08;M&#xff09;類型INT類型TINYINT類型BIGINT類型浮點數類型float類型DECIMAL(M,D)類型區別總結 字符串類型CHAR類型VARCHAR(M)類型 日期和時間類型enum和set類型 …

數字化時代下,軟件測試中的滲透測試是如何保障安全的?

在如今數字化與信息化的時代&#xff0c;軟件測試中存在滲透測試&#xff0c;其位置十分重要&#xff0c;它借助模擬惡意攻擊的方式&#xff0c;去發現軟件系統所存在的漏洞以及安全問題&#xff0c;這是保障軟件安全的關鍵環節&#xff0c;接下來我會對它的各個方面進行詳細介…

Pytorch - Developer Notes 1/2

文章目錄 自動混合精度示例典型的混合精度訓練處理未縮放梯度梯度裁剪 處理縮放梯度梯度累積梯度懲罰 處理多個模型、損失函數和優化器多 GPU 工作環境下的注意事項單進程中的DataParallel分布式數據并行&#xff1a;每個進程對應一個GPU每個進程使用多塊GPU的DistributedDataP…

RuntimeError: CUDA error: __global__ function call is not configured

表明在 CUDA 設備上調用的核函數 沒有正確配置線程塊和網格維度。 一般體現在&#xff1a; 直接調用 kernel 函數&#xff0c;而不是通過 launch 函數 指定 kernel 函數調用 解決方法&#xff08;示例&#xff09;&#xff1a; // kernel function __global__ void Idtest_k…

cloudfare+gmail 配置 smtp 郵箱

這里介紹有一個域名后&#xff0c;不需要服務器&#xff0c;就可以實現 cloudfare gmail 的 郵箱收發。 為什么還需要 gmail 的 smtp 功能&#xff0c;因為 cloudfare 默認只是對 email 進行轉發&#xff0c;就是只能收郵件而不能發送郵件&#xff0c;故使用 gmail 的功能來進…

如何在 CentOS 7 命令行連接 Wi-Fi?如何在 Linux 命令行連接 Wi-Fi?

如何在 CentOS 7 命令行連接 Wi-Fi&#xff1f;如何在 Linux 命令行連接 Wi-Fi&#xff1f; 摘要 本教程覆蓋如何在多種 Linux 發行版下通過命令行連接 Wi-Fi&#xff0c;包括&#xff1a; CentOS 7、Ubuntu、Debian、Arch Linux、Fedora、Alpine Linux、Kali Linux、OpenSU…

基于PHP的在線編程課程學習系統

有需要請加文章底部Q哦 可遠程調試 基于PHP在線編程課程學習系統 一 介紹 在線編程課程學習系統基于原生PHP開發&#xff0c;數據庫mysql&#xff0c;前端jquery.js。系統角色分為學生&#xff0c;教師和管理員。(附帶參考設計文檔) 技術棧&#xff1a;phpmysqljquery.jsphps…

PyTorch_張量形狀操作

搭建模型時&#xff0c;數據都是基于張量形式的表示&#xff0c;網絡層與層之間很多都是以不同的shape的方式進行表現和運算。 對張量形狀的操作&#xff0c;以便能夠更好處理網絡各層之間的數據連接。 reshape 函數的用法 reshape 函數可以再保證張量數據不變的前提下改變數…

大模型實踐:圖文解鎖Ollama在個人筆記本上部署llm

使用在線模型服務時&#xff0c;我們常常需要支付API調用費用&#xff0c;這對于個人開發者或小型組織來說可能是一筆不小的開支。那么&#xff0c;有沒有方法可以在本地免費使用這些強大的模型呢&#xff1f;答案是肯定的——Ollama就是這樣一個工具。 當然如果是比較大的組織…