python做題日記(12)

第二十七題

? ? ? ? LeetCode第27題要求原地移除數組中所有等于給定值val的元素,并返回移除后數組的新長度。不能使用額外的數組空間,必須在原數組上修改,且元素的順序可以改變。對于這道題的解法在之前的題目中也使用過,可以使用雙指針法(快慢指針),快指針遍歷數組,慢指針標記新數組的下一個位置。當快指針指向的元素不等于val時,將該元素復制到慢指針的位置,并移動慢指針。

class Solution:def removeElement(self, nums: list[int], val: int) -> int:slow = 0for fast in range(len(nums)):if nums[fast] != val:nums[slow] = nums[fast]slow += 1return slow

第二十八題

????????LeetCode第28題要求實現一個函數,在haystack字符串中找出needle字符串第一次出現的位置。如果needle為空字符串,返回0;如果不存在,返回-1。這與字符串內置的find()方法功能類似。首先處理特殊情況即當needle為空字符串時,題目要求返回0。這與Python的字符串處理邏輯一致,例如"abc".find("")也會返回0。通過遍歷haystack的每個可能位置,截取與needle長度相同的子串進行比較。窗口滑動范圍是0len(haystack)-len(needle),確保不會越界。這題如果直接采用字符串的find處理方法也是可以查找到字串在字符串中首次出現的位置。

class Solution:def strStr(self, haystack: str, needle: str) -> int:# 特殊情況:needle為空字符串,返回0if not needle:return 0# 遍歷 haystack,查找 needlefor i in range(len(haystack) - len(needle) + 1):if haystack[i:i+len(needle)] == needle:return ireturn -1

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

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

相關文章

2025年計算機科學與網絡安全國際會議(CSNS 2025)

第二屆計算機科學與網絡安全國際會議(CSNS 2025)將在蘭州舉辦,這是一場聚焦于計算機科學領域最新進展及網絡安全前沿技術的國際性學術交流盛會。該會議旨在為來自全球各地的研究學者、工程師以及相關行業專業人士提供一個高水平的交流平臺&am…

知識拓展卡————————關于Access、Trunk、Hybrid端口

目錄 什么是Trunk List、VLAN ID、PVID: VLAN ID(Virtual Local Area Network Identifier): Trunk List(Trunk列表): PVID(Prot VLAN ID): 關于Native VLAN &#x…

Cursor 工具項目構建指南: Web Vue-Element UI 環境下的 Prompt Rules 約束(new Vue 方式)

簡簡單單 Online zuozuo: 簡簡單單 Online zuozuo 簡簡單單 Online zuozuo 簡簡單單 Online zuozuo 簡簡單單 Online zuozuo :本心、輸入輸出、結果 簡簡單單 Online zuozuo : 文章目錄 Cursor 工具項目構建指南: Web Vue-Element UI 環境下的 Prompt Rules 約束前言項目簡…

hadoop集群啟動沒有datanode解決

問題 多次初始化會出現此問題,根本原因是ClusterID不一樣 解決 首先停止集群 stop-all.sh然后到/hadoop/logs中找到hadoop-root-datanode-hadoopxxx.log文件 cat一下這個文件,找到ClusterID 復制 然后到 可能文件會不太一樣,可能直接是…

ann算法的種類有哪些,之間的區別,各自的適用場景

ANN(近似最近鄰)算法主要分為三類技術路線:基于樹的方法、哈希方法和圖方法,它們在原理、性能及適用場景上有顯著差異: 1. 基于樹的方法 核心原理:遞歸劃分數據空間形成樹狀結構(如二叉樹或多叉…

云服務器部署Gin+gorm 項目 demo

更多個人筆記見: (注意點擊“繼續”,而不是“發現新項目”) github個人筆記倉庫 https://github.com/ZHLOVEYY/IT_note gitee 個人筆記倉庫 https://gitee.com/harryhack/it_note 個人學習,學習過程中還會不斷補充&…

【學習筆記】TCP 與 UDP

TCP(Transmission Control Protocol)與UDP(User Datagram Protocol)是 網絡通訊 中最基礎也最常用的兩種 傳輸層 協議。 文章目錄 1. 簡介2. OSI 與 TCP/IP 模型中的定位3. 協議原理與關鍵機制3.1 UDP3.2 TCP 5. 實踐:…

HikariCP 可觀測性最佳實踐

HikariCP 介紹 HikariCP 是一個高性能、輕量級的 JDBC 連接池,由 Brett Wooldridge 開發。它以“光”命名,象征快速高效。它支持多種數據庫,配置簡單,通過字節碼優化和智能管理,實現低延遲和高并發處理。它還具備自動…

Java SpringBoot 調用大模型 AI 構建智能應用實戰指南

一、基礎知識 (一)Java基礎 Java是一種廣泛使用的高級編程語言,具有簡單、面向對象、分布式、解釋型、健壯、安全、架構中立、可移植、高性能、多線程和動態等特點。在構建基于Spring Boot的AI應用之前,您需要具備扎實的Java基礎…

電路圖識圖基礎知識-降壓啟動(十五)

降壓啟動電動機控制電路 降壓啟動,是指啟動時降低加在電動機定子繞組上的電壓,待電動機啟動起來后再將電壓 恢復到額定值,使之運行在額定電壓下。降壓啟動可以減小啟動電流,從而減小線路電壓降。 傳統的降壓啟動包括定子串電阻或…

2025年大模型平臺落地實踐研究報告|附75頁PDF文件下載

本報告旨在為各行業企業在建設落地大模型平臺的過程中,提供有效的參考和指引,助力大模型更高效更有價值地規模化落地。本報告系統性梳理了大模型平臺的發展背景、歷程和現狀,結合大模型平臺的特點提出了具體的落地策略與路徑,同時…

Docker慢慢學

1、Docker DeskTop 2、N8N下載 3、Kafka docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID1 -e KAFKA_ZOOKEEPER_CONNECTzookeeper:2181 -e KAFKA_ADVERTISED_LISTENERSPLAINTEXT://localhost:9092 -e KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR1 con…

Java 中創建線程主要有三種方式

在 Java 中,創建線程主要有三種方式,每種方式各有特點和適用場景。以下是詳細說明和代碼示例: 1. 繼承 Thread 類 原理:自定義類繼承 Thread 并重寫 run() 方法,通過調用 start() 啟動新線程。 特點:簡單直…

ck-editor5的研究 (5):優化-頁面離開時提醒保存,順便了解一下 Editor的生命周期 和 6大編輯器類型

前言 經過前面的 4 篇內容,我們已經慢慢對 CKEditor5 熟悉起來了。這篇文章,我們就來做一個優化,順便再補幾個知識點: 當用戶離開時頁面時,提醒他保存數據了解一下 CKEditor5 的 六大編輯器類型了解一下 editor 實例對…

第42節:模型優化與部署:Web服務部署(Flask, FastAPI)

1. 引言 在現代人工智能和機器學習應用中,模型的開發只是整個流程的一部分。 將訓練好的模型有效地部署為可訪問的Web服務,使其能夠處理實際請求并返回預測結果,是模型價值實現的關鍵環節。Python生態系統提供了多種輕量級Web框架,其中Flask和FastAPI是目前最受歡迎的選擇…

LabVIEW超寬帶緊湊場測量系統

采用 LabVIEW 開發超寬帶緊湊場測量系統,實現天線方向圖、目標雷達散射截面(RCS)及天線增益的自動化測量。通過品牌硬件設備,優化系統架構,解決傳統測量系統在兼容性、數據處理效率及操作便捷性等方面的問題&#xff0…

vue2使用筆記、vue2和vue3的區別

文章目錄 vue2和vue3的區別1. 實現數據響應式的原理不同2. 生命周期不同3. vue 2.0 采用了 option 選項式 API,vue 3.0 采用了 composition 組合式 API4. 新特性編譯宏5. 父子組件間雙向數據綁定 v-model 不同6. v-for 和 v-if 優先級不同7. 使用的 diff 算法不同8.…

CSS3美化頁面元素

1. 字體 <span>標簽 字體樣式? 字體類型&#xff08;font-family&#xff09; 字體大小&#xff08;font-size&#xff09; 字體風格&#xff08;font-style&#xff09; 字體粗細&#xff08;font-weight&#xff09; 字體屬性&#xff08;font&#xff09; 2. 文本 文…

【筆記】Windows 下載并安裝 ChromeDriver

以下是 在 Windows 上下載并安裝 ChromeDriver 的筆記&#xff1a; ? Windows 下載并安裝 ChromeDriver 1?? 確認 Chrome 瀏覽器版本 打開 Chrome 瀏覽器 點擊右上角 ? → 幫助 → 關于 Google Chrome 記下版本號&#xff0c;例如&#xff1a;114.0.5735.199 2?? 下載…

工廠模式 vs 策略模式:設計模式中的 “創建者” 與 “決策者”

在日常工作里&#xff0c;需求變動或者新增功能是再常見不過的事情了。而面對這種情況時&#xff0c;那些耦合度較高的代碼就會給我們帶來不少麻煩&#xff0c;因為在這樣的代碼基礎上添加新需求往往困難重重。為了保證系統的穩定性&#xff0c;我們在添加新需求時&#xff0c;…