代碼隨想錄算法訓練營--打卡day4

一.移除鏈表元素

1.題目鏈接

203. 移除鏈表元素 - 力扣(LeetCode)

2.思路

通過?while?循環來遍歷鏈表,只要?cur?的下一個節點不為空,就繼續循環。在循環中,對?cur?的下一個節點的值進行判斷:

?
  • 值不等于?val?的情況:如果?cur.next.val?不等于?val,說明當前?cur?的下一個節點不需要移除,那么將?cur?指針向后移動一位,即?cur = cur.next,繼續檢查后續節點。
  • 值等于?val?的情況:如果?cur.next.val?等于?val,說明當前?cur?的下一個節點是需要移除的目標節點。此時,將?cur?的?next?指針直接指向?cur.next.next,這樣就跳過了值為?val?的節點,從而將其從鏈表中移除。在移除節點后,cur?指針不需要移動,因為下一個新的節點還沒有被檢查,需要繼續在當前位置進行判斷。

3.代碼

class Solution {public ListNode removeElements(ListNode head, int val) {ListNode dummy=new ListNode(0);dummy.next=head;ListNode cur=dummy;while(cur.next!=null){if(cur.next.val!=val){cur=cur.next;}else{cur.next=cur.next.next;}}return dummy.next;}
}

二.反轉鏈表

1.題目鏈接

206. 反轉鏈表 - 力扣(LeetCode)

3.代碼

class Solution {public ListNode reverseList(ListNode head) {ListNode pre=null;ListNode cur=head;while(cur!=null){ListNode cur_next=cur.next;cur.next=pre;pre=cur;cur=cur_next;}return pre;}
}

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

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

相關文章

虛擬電廠:多元能源聚合,開啟綠色電力新時代

虛擬電廠:多元能源聚合,開啟綠色電力新時代 在“雙碳”目標驅動下,電力系統正經歷從集中式向分布式、從單一能源向多能互補的深刻變革。 作為能源互聯網的核心載體,虛擬電廠通過數字化技術整合多種能源資源,而是像指…

高通Android10 鈴聲通話音頻80%音量修改

先修改最高的音量step --- a/SC60_AP/frameworks/base/services/core/java/com/android/server/audio/AudioService.javab/SC60_AP/frameworks/base/services/core/java/com/android/server/audio/AudioService.java-311,14 311,14 public class AudioService extends IAudio…

類加載過程?類隔離了解過嗎?

類加載過程詳解 類加載是 JVM 將類的字節碼從磁盤、網絡或其他來源加載到內存,并轉換為 Class 對象的過程,主要分為以下 五個階段: 1. 加載(Loading) 任務:查找類的二進制字節流(如 .class 文…

使用msmtp和mutt在CentOS上發送指定目錄下的所有文件作為郵件附件

1.安裝 msmtp: 如果尚未安裝,請先通過以下命令安裝msmtp。 sudo yum install msmtp 2.配置 msmtp 使用新浪郵箱: 創建或編輯配置文件~/.msmtprc,輸入以下內容(記得替換授權碼)。 defaults tls on tls_st…

Vue+Elementui首頁看板

源碼 <template><!-- 查詢條件--><div class="optimize-norm" v-loading="selectDataLoading"><el-form :model="queryParams" ref="queryRef" style="padding-bottom:8px" :inline="true"…

匯編學習之《指針寄存器大小端學習》

什么是指針寄存器&#xff1f; 操作棧的寄存器 棧&#xff1a; 保存函數里面傳遞的參數&#xff0c;局部變量等。 EBP&#xff1a; 指向棧底的指針 ESP&#xff1a; 指向棧頂的指針。 計算入棧地址變化規則 通過OllDbg查看 有可能點擊安裝的時候棧區域第一次查看會沒有顯…

Oracle數據庫數據編程SQL<3.7 PL/SQL 觸發器(Trigger)>

觸發器是Oracle數據庫中的一種特殊存儲過程&#xff0c;它會在特定數據庫事件發生時自動執行。觸發器通常用于實現復雜的業務規則、數據驗證、審計跟蹤等功能。 目錄 一、觸發器基本概念 1. 觸發器特點 2. 觸發器組成要素 二、觸發器類型 1. DML觸發器 2. DDL觸發器 3.…

2025年滲透測試面試題總結-某 攜程旅游-基礎安全工程師(題目+回答)

網絡安全領域各種資源&#xff0c;學習文檔&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各種好玩的項目及好用的工具&#xff0c;歡迎關注。 目錄 攜程旅游-基礎安全工程師 反序列化原理 核心原理 擴展分析 SQL注入本質 核心原理 擴展分析 SQL注…

CSS 邊框(Border)樣式詳解

CSS 邊框&#xff08;Border&#xff09;樣式詳解 CSS 提供了多種邊框樣式&#xff0c;使我們能夠控制元素的外觀。本文將詳細介紹 CSS 邊框的各種屬性及應用示例。 1. 基本邊框屬性 CSS 主要使用 border 相關屬性定義邊框&#xff0c;基本語法如下&#xff1a; border: [邊…

SpringCould微服務架構之Docker(6)

容器的基本命令&#xff1a; 1. docker exec &#xff1a;進入容器執行命令 2. docker logs: -f 持續查看容器的運行日志 3. docker ps&#xff1a;查看所有運行的容器和狀態 案例&#xff1a;創建運行一個容Nginx容器 docker run--name myNginx -p 80:80 -d nginx 命…

unity3d端監聽 uri scheme

一、消息監聽 1.創建一個腳本命名為 “URISchemeListener” &#xff0c;用于接收URI消息&#xff08;代碼如下&#xff09;。 using System; using System.Runtime.InteropServices; using UnityEngine; using UnityEngine.UI;public class URISchemeListener : MonoBehavio…

網絡信息安全應急演練方案

信息安全應急演練方案 總則 &#xff08;一&#xff09;編制目的 旨在建立并完善應對病毒入侵、Webshell 攻擊以及未授權訪問等信息安全突發事件的應急機制&#xff0c;提升組織對這類事件的快速響應、協同處理和恢復能力&#xff0c;最大程度降低事件對業務運營、數據安全和…

電商場景下高穩定性數據接口的選型與實踐

在電商系統開發中&#xff0c;API接口需要應對高并發請求、動態數據更新和復雜業務場景。我將重點解析電商場景對數據接口的特殊需求及選型方案。 一、電商API必備的四大核心能力 千萬級商品數據實時同步 支持SKU基礎信息/價格/庫存多維度更新每日增量數據抓取與歷史版本對比…

Android R adb remount 調用流程

目的&#xff1a;調查adb remount 與adb shell進去后執行remount的差異 調試方法&#xff1a;添加log編譯adbd,替換system\apex\com.android.adbd\bin\adbd 一、調查adb remount實現 關鍵代碼&#xff1a;system\core\adb\daemon\services.cpp unique_fd daemon_service_to…

多模態大語言模型arxiv論文略讀(二)

Identifying the Correlation Between Language Distance and Cross-Lingual Transfer in a Multilingual Representation Space ?? 論文標題&#xff1a;Identifying the Correlation Between Language Distance and Cross-Lingual Transfer in a Multilingual Representat…

【運維】負載均衡

老規矩&#xff0c;先占坑&#xff0c;后續更新。 開頭先理解一下所謂的“均衡”&#xff0c;不能狹義地理解為分配給所有實際服務器一樣多的工作量&#xff0c;因為多臺服務器的承載能力各不相同&#xff0c;這可能體現在硬件配置、網絡帶寬的差異&#xff0c;也可能因為某臺…

大型語言模型Claude的“思維模式”最近被公開解剖

每周跟蹤AI熱點新聞動向和震撼發展 想要探索生成式人工智能的前沿進展嗎&#xff1f;訂閱我們的簡報&#xff0c;深入解析最新的技術突破、實際應用案例和未來的趨勢。與全球數同行一同&#xff0c;從行業內部的深度分析和實用指南中受益。不要錯過這個機會&#xff0c;成為AI領…

Ubuntu環境安裝

1. 安裝gcc、g和make sudo apt update sudo apt install build-essential 2. 安裝cmake ubuntu安裝cmake的三種方法&#xff08;超方便&#xff01;&#xff09;-CSDN博客 3. 安裝ssh sudo apt-get install libssl-dev

【力扣hot100題】(028)刪除鏈表的倒數第N個節點

鏈表題還是太簡單了。 怕越界所以先定義了一個頭結點的頭結點&#xff0c;然后定義快慢指針&#xff0c;快指針先走n步&#xff0c;隨后一起走&#xff0c;直到快指針走到頭&#xff0c;刪除慢指針后一個節點即可。 /*** Definition for singly-linked list.* struct ListNod…

C/C++回調函數實現與std::function和std::bind介紹

1 概述 回調函數是一種編程模式&#xff0c;指的是將一個函數作為參數傳遞給另一個函數&#xff0c;并在某個特定事件發生時或滿足某些條件時由該函數調用。這種機制允許你定義在特定事件發生時應執行的代碼&#xff0c;從而實現更靈活和模塊化的程序設計。 2 傳統C/C回調實現…