【算法】算法題-20231211

在這里插入圖片描述

這里寫目錄標題

  • 一、387. 字符串中的第一個唯一字符
  • 二、1189. “氣球” 的最大數量
  • 三、1221. 分割平衡字符串

一、387. 字符串中的第一個唯一字符

簡單

給定一個字符串 s ,找到 它的第一個不重復的字符,并返回它的索引 。如果不存在,則返回 -1 。

示例 1:
輸入: s = “leetcode”
輸出: 0

示例 2:
輸入: s = “loveleetcode”
輸出: 2

示例 3:
輸入: s = “aabb”
輸出: -1

def test(s):top=[]dic={}for i in s:if i not in dic:dic[i]=1top.append(i)else:dic[i]+=1if i in top:top.remove(i)if len(top)==0:return -1else:return s.index(top[0])s="leetcode"
print(test(s))

二、1189. “氣球” 的最大數量

提示
簡單
給你一個字符串 text,你需要使用 text 中的字母來拼湊盡可能多的單詞 “balloon”(氣球)。
字符串 text 中的每個字母最多只能被使用一次。請你返回最多可以拼湊出多少個單詞 “balloon”。
在這里插入圖片描述

def fn1(text, balloon):cnt = Counter(text)target = Counter(balloon)return min(cnt[k] // target[k] for k in target)text = "nlaebolko"
balloon = "balloon"
print(fn1(text, balloon))

三、1221. 分割平衡字符串

提示
簡單

平衡字符串 中,‘L’ 和 ‘R’ 字符的數量是相同的。
給你一個平衡字符串 s,請你將它分割成盡可能多的子字符串,并滿足:
每個子字符串都是平衡字符串。
返回可以通過分割得到的平衡字符串的 最大數量 。

示例 1:
輸入:s = “RLRRLLRLRL”
輸出:4
解釋:s 可以分割為 “RL”、“RRLL”、“RL”、“RL” ,每個子字符串中都包含相同數量的 ‘L’ 和 ‘R’ 。

示例 2:
輸入:s = “RLRRRLLRLL”
輸出:2
解釋:s 可以分割為 “RL”、“RRRLLRLL”,每個子字符串中都包含相同數量的 ‘L’ 和 ‘R’ 。
注意,s 無法分割為 “RL”、“RR”、“RL”、“LR”、“LL” 因為第 2 個和第 5 個子字符串不是平衡字符串。

示例 3:
輸入:s = “LLLLRRRR”
輸出:1
解釋:s 只能保持原樣 “LLLLRRRR” 。

無腦走棧的操作,思路:
循環字符串s
當棧為空或者棧頂元素等于當前元素時,入棧
否則出棧
每次循環結束如果棧內為空表示找到了一個符合條件,結果+1
最終返回結果ret即可

def Solution(s):ret=0stack=[]for i in s:if not stack or stack[-1]==i:stack.append(i)else:stack.pop()if not stack:ret+=1return rets = "RLRRRLLRLL"
print(Solution(s))

在這里插入圖片描述

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

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

相關文章

算法通關村第十五關 | 青銅 | 用4KB內存尋找重復元素

處理海量數據的思路 1.使用位存儲:占用的空間是存整數的 1/8 。 2.分塊:也叫外部排序,將大文件劃分為若干小塊,先處理小塊再逐步得到想要的結果,需要至少遍歷兩次全部序列,是用時間換空間的方法。 3.堆&…

Mockjs 增、刪、改、查(分頁、多條件查詢)

查(分頁、多條件查詢): 關鍵代碼: Mock.mock(/vue-table-list/tableLinkage/list, post, (option) > {// console.log("🚀 ~ file: tableLinkage.js:66 ~ Mock.mock ~ option:", option)const params J…

MFC畫折線圖,基于x64系統

由于項目的需要,需要畫一個折線圖。 傳統的Teechart、MSChart、HighSpeedChart一般是只能配置在x86系統下,等到使用x64系統下運行就是會報出不知名的錯誤,這個地方讓人很苦惱。 我在進行配置的過程之中,使用Teechart將x86配置好…

基于Java SSM框架實現班級同學錄、聚會報名網站系統項目【項目源碼+論文說明】

基于java的SSM框架實現班級同學錄聚會報名網站系統演示 摘要 21世紀的今天,隨著社會的不斷發展與進步,人們對于信息科學化的認識,已由低層次向高層次發展,由原來的感性認識向理性認識提高,管理工作的重要性已逐漸被人…

程序員考公筆記之邏輯判斷(圖形推理)

文章目錄 寫在前面1、邏輯判斷1.1、圖形推理1.1.1、位置類1.1.2、樣式類1.1.3、數量類1.1.4、屬性類1.1.5、六面體 寫在前面 1、邏輯判斷 1.1、圖形推理 觀察:先宏觀,再微觀 圖形推理的命題形式: 一組式 觀察路徑:順序看(考最…

解決方案- 材料吸波、屏蔽性能測試系統 (10MHz~500GHz)

材料吸波、屏蔽性能測試系統 (10MHz~500GHz) 材料電磁參數綜合測試解決方案 材料吸波、屏蔽性能測試系統測試頻率范圍可達10MHz~500GHz,可實現材料反射率、屏蔽性能特性參數測試。系統由矢量網絡分析儀、測試夾具、系統軟件等組…

申論筆記(思路技巧)

文章目錄: 一:福利 二:常見題型 1.歸納概括題 2.提出對策/措施/建議題 2.1 找到對策的來源 2.2 提煉對策 2.3 明確是否需要先概括問題 2.4 對策表述三部曲 3.綜合分析題 3.1 綜合分析最大的難點 3.2 分析問題的技巧 4.應用文/公文…

力扣每日一題day34[110. 平衡二叉樹]

給定一個二叉樹,判斷它是否是高度平衡的二叉樹。 本題中,一棵高度平衡二叉樹定義為: 一個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過 1 。 示例 1: 輸入:root [3,9,20,null,null,15,7] 輸出:t…

wappalyzer基于插件的網站開發技術解析工具

一、wappalyzer 解釋:這是一款強大的工具,其主要能提供一種快速、可靠地檢測網站所使用技術棧的方法,也就說說,服務器發來的信息都會被它剖析,然后分析出前端的技術棧,有時后端所使用的技術棧如果網頁特征…

[ 藍橋杯Web真題 ]-冬奧大抽獎

目錄 介紹 準備 目標 規定 思路 知識補充 解法參考 介紹 藍橋云課慶冬奧需要舉行一次抽獎活動,我們一起做一個頁面提供給云課冬奧抽獎活動使用。 準備 開始答題前,需要先打開本題的項目代碼文件夾,目錄結構如下: ├──…

甲醛處理企業網站效果如何

甲醛往往是新裝房間主所擔心的問題,而甲醛處理公司則可以處理甲醛問題,市場需求也比較高,雖然具備同城服務屬性,但外地或連鎖經營也非常適合,而品牌們也遇到一些痛點: 1、品牌宣傳拓客難 甲醛處理公司也需…

公司app定制開發 ,打造專屬企業移動應用

公司app定制:打造專屬企業移動應用 在當今數字化時代,移動應用已經成為了人們生活中不可或缺的一部分,越來越多的企業也意識到了移動應用對于企業形象和業務拓展的重要性,為了滿足企業的需求,公司app定制服務應運而生…

基于查表法的水流量算法設計與實現

寫在前面 本文分享的是一種基于查表法的水流量的算法方案設計與實現,算法簡單易懂,主要面向初學者,有兩個目的:一是給初學者一些算法設計的思路引導;二是引導初學者學習怎樣用C語言編程實現。 一、設計需求 基于“19…

C++ 中的引用

文章目錄 C 引用的應用1. 修改函數中傳遞的參數2. 避免復制大型結構3. for 循環中修改所有對象4. for 循環中避免復制對象 References vs Pointers引用的限制使用引用的優點練習Quesition 1Question 2Question 3Question 4Question 5Question 6 如果一個變量被聲明為引用&#…

Android-Framework 默認橫屏、dpi設置

一、環境 高通865 Android 10 二、源碼修改位置 1、修改dpi device/qcom/kona/kona.mk -116,7 116,7 TARGET_USES_RRO : true# system prop for Bluetooth SOC typePRODUCT_PROPERTY_OVERRIDES \vendor.qcom.bluetooth.sochastings \ - ro.sf.lcd_density480ro.sf.lcd_d…

Python中的logging介紹

Python中的logging模塊是一個強大的、靈活的、可配置的日志記錄系統。它允許你在不修改源代碼的情況下記錄錯誤和調試信息,同時也可以對日志信息進行各種處理,例如寫入到文件、輸出到控制臺、記錄到數據庫等。 logging模塊提供了一種用于日志記錄的通用接…

液態二氧化碳儲存罐遠程無線監測系統

二氧化碳強化石油開采技術,須先深入了解石油儲層的地質特征和二氧化碳的作用機制。現場有8輛二氧化碳罐裝車,每輛罐車上有4臺液態二氧化碳儲罐,每臺罐的尾部都裝有一臺西門子S7-200 smart PLC。在注入二氧化碳的過程中,中控室S7-1…

國產單片機XL32F001,價格便宜,性價比高,32位M0+內核

XL32F001芯片簡介 1、是一個32位ARM架構Cortex -M0系列的單片機 2、系統工作頻率最高為24MHz 3、擁有24Kbytes Flash存儲器和3Kbytes SRAM 4、擁有內部24MHz和32.768MHz的RC振蕩器(HSI和LSI),擁有32.768KHz低速晶體振蕩器(LSE…

JVM內存模型+JVM類加載機制

jvm內存模型包括哪些以及各自作用 主要包括類加載 對象創建 方法調用 本地方法區 程序計數 方法區: class文件加載到方法區 堆: 對象創建在堆內存中 jvm棧:方法調用入棧 本地方法棧:主要是c寫的一些方法 程序計數器:存…

OneNote for Windows10 徹底刪除筆記本

找了超多方法,都沒有用,我的OneNote都沒有文件選項,要在OneDrive中刪除,但是一直登不進,然后又找到一個方法: 在網頁中打開Office的控制面板 "Sign in to your Microsoft account" 在“最近”一…