国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
如果輸入字符串為
算法如下:
>示例
此方法使用兩個變量:計數(shù)和長度。如果字符為“
首頁 Java java教程 使用Java的最長平衡括號前綴的長度

使用Java的最長平衡括號前綴的長度

Feb 07, 2025 am 11:55 AM
java

Length of longest balanced parentheses prefix using Java

本文說明了如何使用Java查找最長平衡括號前綴的長度。首先,我們將使用幾個示例理解問題,然后學(xué)習(xí)兩種不同的方法來尋找問題。

問題解釋

在這里,我們給出一個包含括號的字符串,我們需要從字符串中找到平衡的括號集的長度。換句話說,如果有所有開口括號

“(”(“

”),那么我們將其稱為平衡。 從字符串的開頭,前綴定義平衡集。例如,對于括號集'(())()',僅'(())'。 >輸入和輸出方案

為了更好地理解,讓我們看一些輸入和輸出方案。

如果輸入字符串為

“(()”

,平衡括號前綴為

()
    ,則長度為2。
  • 如果輸入字符串為”(((())))(((“),平衡括號前綴為((()(()(()(()))))>所以長度為8。
  • >
  • 如果輸入字符串為“(()()())()()”,平衡的括號前綴為(()()()()),則長度是6。
  • 最長平衡括號前綴的長度可以找到如下: 使用堆棧數(shù)據(jù)結(jié)構(gòu)
  • 計數(shù)打開和關(guān)閉括號

使用堆棧數(shù)據(jù)結(jié)構(gòu)
  • >可以使用堆棧。如果從堆棧中找到開口括號'
  • ',請將其推到堆棧上。如果找到閉合括號,請彈出堆棧,并將計數(shù)器變量增加2(平衡均值的長度您得到的是2。)繼續(xù)執(zhí)行此操作,并在變?yōu)榭斩褩r返回計數(shù)器變量
  • >算法

算法如下:

如果字符為

>,將其推到堆棧上。> 如果

字符為

,則會彈出堆棧。
<code><p><b>ステップ1:</b>スタックとカウンタを初期化します。</p>
<p><b>ステップ2:</b>文字列の各文字を反復(fù)処理します。</p></code>
    >將計數(shù)器增加2。
  • 檢查堆棧是否為空。
  • 如果是空的,則結(jié)束循環(huán)。
  • >
  • 步驟3:最后返回計數(shù)器。
  • >示例

    <code><p><b>ステップ1:</b>スタックとカウンタを初期化します。</p>
    <p><b>ステップ2:</b>文字列の各文字を反復(fù)処理します。</p></code>

    輸出

    輸入字符串是:((())((() 最長平衡括號前綴的長度為:6

    >

    計數(shù)打開和關(guān)閉括號

    此方法使用兩個變量:計數(shù)和長度。如果字符為“

    ”(

    >”,則從字符串中獲得1;如果字符計數(shù)為1;如果字符為“”,則減少數(shù)量為1,而增量長度則增加2。檢查計數(shù)是否為0,如果是0,則退出循環(huán)并返回長度。 >示例

    import java.util.Stack;
    
    public class Example {
       public static int longestBalancedPrefix(String s) {
          Stack<Character> stack = new Stack<>();
          int count = 0;
          for (int i = 0; i < s.length(); i++) {
             char c = s.charAt(i);
             if (c == '(') {
                stack.push(c);
             } else if (c == ')') {
                if (!stack.isEmpty()) {
                   stack.pop();
                   count += 2;
                }
             }
             if (stack.isEmpty()) {
                break;
             }
          }
          return count;
       }
    
       public static void main(String[] args) {
          String s = "((())(((";
          int length = longestBalancedPrefix(s);
          System.out.println("入力文字列は:" + s);
          System.out.println("最長のバランスの取れた括弧のプレフィックスの長さは:" + length);
       }
    }
    輸出

    輸入字符串為((()()())((()))) 最長平衡的括號前綴長度為8

以上是使用Java的最長平衡括號前綴的長度的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

撰寫PHP評論的提示 撰寫PHP評論的提示 Jul 18, 2025 am 04:51 AM

寫好PHP注釋的關(guān)鍵在于明確目的與規(guī)范,注釋應(yīng)解釋“為什么”而非“做了什么”,避免冗余或過于簡單。1.使用統(tǒng)一格式,如docblock(/*/)用于類、方法說明,提升可讀性與工具兼容性;2.強調(diào)邏輯背后的原因,如說明為何需手動輸出JS跳轉(zhuǎn);3.在復(fù)雜代碼前添加總覽性說明,分步驟描述流程,幫助理解整體思路;4.合理使用TODO和FIXME標(biāo)記待辦事項與問題,便于后續(xù)追蹤與協(xié)作。好的注釋能降低溝通成本,提升代碼維護效率。

編寫有效的PHP評論 編寫有效的PHP評論 Jul 18, 2025 am 04:44 AM

注釋不能馬虎是因為它要解釋代碼存在的原因而非功能,例如兼容老接口或第三方限制,否則看代碼的人只能靠猜。必須加注釋的地方包括復(fù)雜的條件判斷、特殊的錯誤處理邏輯、臨時繞過的限制。寫注釋更實用的方法是根據(jù)場景選擇單行注釋或塊注釋,函數(shù)、類、文件開頭用文檔塊注釋說明參數(shù)與返回值,并保持注釋更新,對復(fù)雜邏輯可在前面加一行概括整體意圖,同時不要用注釋封存代碼而應(yīng)使用版本控制工具。

通過評論提高可讀性 通過評論提高可讀性 Jul 18, 2025 am 04:46 AM

寫好注釋的關(guān)鍵在于說明“為什么”而非僅“做了什么”,提升代碼可讀性。1.注釋應(yīng)解釋邏輯原因,例如值選擇或處理方式背后的考量;2.對復(fù)雜邏輯使用段落式注釋,概括函數(shù)或算法的整體思路;3.定期維護注釋確保與代碼一致,避免誤導(dǎo),必要時刪除過時內(nèi)容;4.在審查代碼時同步檢查注釋,并通過文檔記錄公共邏輯以減少代碼注釋負(fù)擔(dān)。

有效的PHP評論 有效的PHP評論 Jul 18, 2025 am 04:33 AM

寫好PHP注釋的關(guān)鍵在于清晰、有用且簡潔。1.注釋應(yīng)說明代碼背后的意圖而非僅描述代碼本身,如解釋復(fù)雜條件判斷的邏輯目的;2.在魔術(shù)值、舊代碼兼容、API接口等關(guān)鍵場景添加注釋以提升可讀性;3.避免重復(fù)代碼內(nèi)容,保持簡潔具體,并使用標(biāo)準(zhǔn)格式如PHPDoc;4.注釋需與代碼同步更新,確保準(zhǔn)確性。好的注釋應(yīng)站在他人角度思考,降低理解成本,成為代碼的理解導(dǎo)航儀。

PHP開發(fā)環(huán)境設(shè)置 PHP開發(fā)環(huán)境設(shè)置 Jul 18, 2025 am 04:55 AM

第一步選擇集成環(huán)境包XAMPP或MAMP搭建本地服務(wù)器;第二步根據(jù)項目需求選擇合適的PHP版本并配置多版本切換;第三步選用VSCode或PhpStorm作為編輯器并搭配Xdebug進(jìn)行調(diào)試;此外還需安裝Composer、PHP_CodeSniffer、PHPUnit等工具輔助開發(fā)。

探索基本的PHP語法 探索基本的PHP語法 Jul 17, 2025 am 04:11 AM

PHP基礎(chǔ)語法包括:1.使用包裹代碼;2.用echo或print輸出內(nèi)容,其中echo支持多參數(shù);3.變量無需聲明類型,以$開頭,常見類型有字符串、整數(shù)、浮點數(shù)、布爾值、數(shù)組和對象。掌握這些要點有助于快速入門PHP開發(fā)。

了解PHP變量 了解PHP變量 Jul 17, 2025 am 04:11 AM

PHP變量以$開頭,命名需遵循規(guī)則,如不能以數(shù)字開頭、區(qū)分大小寫;變量作用域分為局部、全局和超全局;使用global可訪問全局變量,但建議用參數(shù)傳遞;可變變量和引用賦值需謹(jǐn)慎使用。變量是存儲數(shù)據(jù)的基礎(chǔ),正確掌握其規(guī)則和機制對開發(fā)至關(guān)重要。

了解PHP變量類型 了解PHP變量類型 Jul 17, 2025 am 04:12 AM

PHP有8種變量類型,常用包括Integer、Float、String、Boolean、Array、Object、NULL和Resource。要查看變量類型,可使用gettype()或is_type()系列函數(shù)。PHP會自動轉(zhuǎn)換類型,但建議關(guān)鍵邏輯用===嚴(yán)格比較。手動轉(zhuǎn)換可用(int)、(string)等語法,但注意可能丟失信息。

See all articles