LeetCode2390從字符串中移除星號

題目描述

??給你一個包含若干星號 * 的字符串 s 。在一步操作中,你可以:選中 s 中的一個星號。移除星號 左側 最近的那個 非星號 字符,并移除該星號自身。返回移除 所有 星號之后的字符串。注意:生成的輸入保證總是可以執行題面中描述的操作。可以證明結果字符串是唯一的。

解析

??雖然這題是棧的類別,但實際上不需要使用棧,而且不是很難。由于確定前面一定有可以刪除的,所以可以直接從后往前遍歷,會更快一點。

public String removeStars(String s) {StringBuilder res = new StringBuilder();int starCount = 0;for (int i = s.length() - 1; i >= 0; i--) {char c = s.charAt(i);if (c == '*') {starCount++;} else if (starCount > 0) {starCount--;} else {res.append(c);}}return res.reverse().toString();}

在這里插入圖片描述
把棧的解法也貼出來:

public String removeStars(String s) {Stack<Character> stack = new Stack<>();for (int i = 0; i < s.length(); i++) {char c = s.charAt(i);if (c == '*') {if (!stack.isEmpty()) {stack.pop();}} else {stack.push(c);}}StringBuilder stringBuilder = new StringBuilder();while (!stack.isEmpty()) {stringBuilder.append(stack.pop());}stringBuilder.reverse();return stringBuilder.toString();}

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

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

相關文章

阿里云的ALB和NLB的區別

AWS的兩種負載均衡器NLB&#xff08;Network Load Balancer&#xff09;和ALB&#xff08;Application Load Balancer&#xff09;在使用場景上的主要區別在于它們的工作層級、功能特性和適用的業務需求&#xff1a; Network Load Balancer (NLB) 工作層級&#xff1a;NLB工作…

代碼隨想錄算法訓練營第28天 | 216. 組合總和 III | 17. 電話號碼的字母組合

216. 組合總和 III 題目鏈接 解 /*** Return an array of arrays of size *returnSize.* The sizes of the arrays are returned as *returnColumnSizes array.* Note: Both returned array and *columnSizes array must be malloced, assume caller calls free().*/void ba…

詳細分析Vue3中的ref(附Demo)

目錄 前言1. 基本知識2. Demo 前言 由于新項目涉及Vue3&#xff0c;本著探究問題的本質研究所不會的疑問 1. 基本知識 ref 是 Vue 3 中用于創建響應式數據的函數 接收一個初始值并返回一個包含了該值的響應式引用對象與 Vue 2.x 中的 data 屬性不同&#xff0c;ref 返回的是…

【已解決】力扣打不開

表現&#xff1a; 1.訪問國內其他網站都沒有問題 2.訪問github也能成功 3.wifi沒有問題 4.連接同網絡的其他主機能打開 唯獨力扣打不開&#xff0c;可能是DNS解析錯誤 》自己網絡配置問題 解決辦法【親測可行】 找可用的hosts 打開站長之家&#xff0c;進行DNS查詢&#xff…

探索AI的實用魅力:我常用的AI工具分享

在數字時代的浪潮中,人工智能(AI)技術已經融入我們生活的各個角落。作為一名與AI技術緊密接觸的用戶,我想通過這篇文章,分享一些我認為最好用、最實用的AI工具,并詳細解釋它們帶來的便利和改變。 一、語音助手工具 實用性:語音助手通過識別和理解用戶的語音指令,能夠完…

卷積網絡項目:實現識別鮮花四分類對比LeNet5、VGG16、ResNet18、ResNet34分類網絡

卷積四分類項目 Gitee傳送門 分類目標選取 鮮花 杏花 apricot_blossom桃花 peach_blossom梨花 pear_blossom梅花 plum_blossom 模型選擇 卷積 LeNet5VGG16ResNet18ResNet34 以圖搜圖 獲取相似度前10的搜圖結果 數據清洗 鮮花四分類 刪除非圖片文件 刪除重復圖片 整理…

【JavaWeb】前后端分離SpringBoot項目快速排錯指南

1 發起業務請求 打開瀏覽器開發者工具&#xff0c;同時顯示網絡&#xff08;Internet&#xff09;和控制臺&#xff08;console&#xff09; 接著&#xff0c;清空控制臺和網絡的內容&#xff0c;如下圖 然后&#xff0c;點擊你的業務按鈕&#xff0c;發起請求。 首先看控制臺…

【C#進階】簡單數據結構類

簡單數據結構類 文章目錄 1、Arraylist1、ArrayList的本質2、聲明3、增刪查改4、裝箱拆箱思考 背包售賣 2、Stack1、Stack的本質2、聲明3、增取查改4、遍歷思考 計算一個數的二進制 3、Queue1、Queue的本質2、聲明3、增取查改4、遍歷思考 每隔一段時間打印一條消息 4、Hashtab…

Json類型轉換異常

class com.alibaba.fastjson.JSONObject cannot be cast to class com.xxx.xxOrder (com.alibaba.fastjson.JSONObject and com.xxx.xxOrder are in unnamed module of loader org.springframework.boot.loader.LaunchedURLClassLoader 25b5c5e3 大概率是因為 JSON.parseObjec…

Yocto學習筆記(三)配置Busybox

1 Busybox介紹 BusyBox 是一個開源的、輕量級的 Unix 工具箱&#xff0c;它集成了許多標準 Unix 工具的精簡版本。它被設計用來運行在資源受限的環境中&#xff0c;例如嵌入式系統或者啟動盤。BusyBox 將多個標準 Unix 實用工具整合到一個可執行文件中&#xff0c;這些工具包括…

如何加密保護U盤?U盤加密方法盤點

U盤是目前最常用的移動存儲設備&#xff0c;可以幫助我們存儲大量數據。而為了保護數據安全&#xff0c;我們需要加密保護U盤。下面我們就來盤點一下U盤加密的方法。 BitLocker加密 BitLocker是Windows的一種磁盤保護工具&#xff0c;通過加密整個磁盤來保護數據&#xff0c;同…

基于Springboot的校園疫情防控信息管理系統(有報告)。Javaee項目,springboot項目。

演示視頻&#xff1a; 基于Springboot的校園疫情防控信息管理系統&#xff08;有報告&#xff09;。Javaee項目&#xff0c;springboot項目。 項目介紹&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三層…

react生命周期及用法

React生命周期是React組件在掛載、更新和卸載過程中的一系列方法的集合。通過生命周期方法&#xff0c;我們可以在不同階段執行特定的操作&#xff0c;例如初始化組件、更新狀態、渲染UI等。 React生命周期分為三個階段&#xff1a;掛載階段、更新階段和卸載階段。以下是React…

Vscode編輯器 js 輸入log自動補全

最近換了新電腦&#xff0c;新下載了Vscode&#xff0c;記錄一下設置項。 Vscode 版本 想要的效果 js文件中輸入log&#xff08;點擊tab鍵&#xff09;&#xff0c;自動補全為 console.log() Vscode 文件》首選項》設置 搜索&#xff1a;snippets Emmet: Show Suggestions…

暗區突圍TWITCH掉寶領測試資格后,steam激活顯示是無效激活碼

自《暗區突圍》測試啟動以來&#xff0c;吸引了大量玩家關注&#xff0c;特別是通過在Twitch平臺上觀看直播即可獲得測試資格的活動&#xff0c;更是掀起了熱潮。然而&#xff0c;部分玩家在成功獲得激活碼后&#xff0c;在Steam平臺激活時遭遇了“無效激活碼”的問題。本文將提…

nginx 配置域名SSL證書HTTPS服務

下載 上傳根目錄 /home/wwwroot/xx.com/ssl 從新執行 添加域名命令 選擇添加SSL SSL Certificate file: 填寫 完整目錄 PEM文件地址 SSL Certificate Key file:填寫 完整目錄 key文件地址

python 對矩陣與矩陣之間對應位置的元素,做softmax操作,代碼實戰

1.對矩陣中對應位置的元素&#xff0c;做softmax 對于一個向量&#xff0c;softmax函數會對其中每一個元素進行指數運算&#xff0c;然后除以所有元素指數和的結果。當將其應用到多個矩陣的相應位置上時&#xff0c;我們實際上是在對每個位置的一組數&#xff08;從各個矩陣的同…

45.WEB滲透測試-信息收集-域名、指紋收集(7)

免責聲明&#xff1a;內容僅供學習參考&#xff0c;請合法利用知識&#xff0c;禁止進行違法犯罪活動&#xff01; 內容參考于&#xff1a; 易錦網校會員專享課 上一個內容&#xff1a;計算機王-CSDN博客 WEB指紋&#xff1a;Web指紋也叫web應用指紋。由于所使用的工具、技術…

PHP 自提時間

前端: 后臺設置: 代碼: public function getBusinessHour(){// 需求單門店$data (new StoreModel())->limit(1)->select()->toArray();$days explode(,, $data[0][shop_hours]);$businessHours $days[1];// 使用 explode 分割字符串&#xff0c;獲取開始和結束時…

ListView[new]

activity_main.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_height"match_parent"android:layout_width"match_parent"…