<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          每日一道 LeetCode (13):最后一個(gè)單詞的長(zhǎng)度

          共 1157字,需瀏覽 3分鐘

           ·

          2020-08-09 21:09

          ?

          每天 3 分鐘,走上算法的逆襲之路。

          ?

          前文合集

          每日一道 LeetCode 前文合集

          代碼倉(cāng)庫(kù)

          GitHub:https://github.com/meteor1993/LeetCode

          Gitee:https://gitee.com/inwsy/LeetCode

          題目:最后一個(gè)單詞的長(zhǎng)度

          題目來(lái)源:https://leetcode-cn.com/problems/length-of-last-word/

          給定一個(gè)僅包含大小寫字母和空格?' '?的字符串 s,返回其最后一個(gè)單詞的長(zhǎng)度。如果字符串從左向右滾動(dòng)顯示,那么最后一個(gè)單詞就是最后出現(xiàn)的單詞。

          如果不存在最后一個(gè)單詞,請(qǐng)返回 0?。

          說(shuō)明:一個(gè)單詞是指僅由字母組成、不包含任何空格字符的 最大子字符串。

          示例:

          輸入:?"Hello?World"
          輸出:?5

          解題思路

          今天這道題可以說(shuō)是相當(dāng)?shù)暮?jiǎn)單,感覺大家看完題以后都應(yīng)該有思路。

          一個(gè)字符串,比如 「Hello World」 ,我們識(shí)別最后一個(gè)字符串是靠 space (空格) 進(jìn)行識(shí)別的,那么只要我倒著檢測(cè)整個(gè)字符串,遇到第一個(gè)空格停下來(lái),就找到了最后一個(gè)字符串。

          需要注意的是我們需要跳過(guò)末尾的所有 space 。

          代碼實(shí)現(xiàn)

          代碼比較簡(jiǎn)單,就是一個(gè)逆序循環(huán),如下:

          public?int?lengthOfLastWord(String?s)?{
          ????int?count?=?0;
          ????boolean?flag?=?false;
          ????for?(int?i?=?s.length()?-?1;?i?>=?0;?i--)?{
          ????????if?(flag?&&?s.charAt(i)?==?'?')?{
          ????????????break;
          ????????}
          ????????if?(s.charAt(i)?!=?'?')?{
          ????????????flag?=?true;
          ????????????count++;
          ????????}
          ????}
          ????return?count;
          }

          解釋一下,這里面第二個(gè)判斷 s.charAt(i) != ' ' 是只要當(dāng)前不是 space ,我們就增加計(jì)數(shù)。

          而其中 flag 變量的作用就是,我們從后往前循環(huán)的時(shí)候,需要跳過(guò)所有的末尾 space ,只有從后往前數(shù)遇到第一個(gè)非 space 才會(huì)開始計(jì)數(shù)。

          今天這道題很簡(jiǎn)單,我就不多說(shuō)了,實(shí)在理解有困難的同學(xué)可以在編輯工具里面多 debug 幾次(悄悄加一句,我遇到看不懂的代碼都是這么干的)。


          感謝閱讀



          瀏覽 75
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  夜夜撸日日撸 | 学生妹一级a片免费看 | 欧美日韩在线播放视频 | 日韩伦理色片一区二区 | 无码人妻一区二区三区在线 |