zoukankan      html  css  js  c++  java
  • [Swift]LeetCode434. 字符串中的单词数 | Number of Segments in a String

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
    ➤微信公众号:山青咏芝(shanqingyongzhi)
    ➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
    ➤GitHub地址:https://github.com/strengthen/LeetCode
    ➤原文地址:https://www.cnblogs.com/strengthen/p/9783619.html 
    ➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
    ➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

    Count the number of segments in a string, where a segment is defined to be a contiguous sequence of non-space characters.

    Please note that the string does not contain any non-printable characters.

    Example:

    Input: "Hello, my name is John"
    Output: 5

    统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。

    请注意,你可以假定字符串里不包括任何不可打印的字符。

    示例:

    输入: "Hello, my name is John"
    输出: 5

    8ms
     1 class Solution {
     2     func countSegments(_ s: String) -> Int {
     3         if s == nil || s.count == 0 {return 0}
     4         var word:Int = 0
     5         var count:Int = 0
     6         //按索引遍历
     7         for i in s.indices
     8         {
     9             if s[i] == " "
    10             {
    11                 if word > 0
    12                 {
    13                     count += 1
    14                     word = 0
    15                 }
    16             }
    17             else
    18             {
    19                 word += 1
    20             }            
    21         }
    22         if word > 0
    23         {
    24             count += 1
    25         }
    26         return count
    27     }
    28 }

    8ms

     1 class Solution {
     2     func countSegments(_ s: String) -> Int {
     3         var count = 0
     4         var segmentInProgress = false
     5         for char in s {
     6             if char != " " && !segmentInProgress {
     7                 count += 1
     8                 segmentInProgress = true
     9             } else if char == " " {
    10                 segmentInProgress = false
    11             }
    12         }
    13         
    14         return count
    15     }
    16 }

    12ms

    1 class Solution {
    2     func countSegments(_ s: String) -> Int {
    3         return s.split(separator: " ").count
    4     }
    5 }

    16ms

    1 class Solution {
    2     func countSegments(_ s: String) -> Int {
    3         return s.characters.split(separator: " ").count
    4     }
    5 }
  • 相关阅读:
    IsCallback和IsPostBack的区别
    win7 无Internet访问权限的解决方法
    Microsoft Office 2007的ContentType
    浏览器渲染原理
    css中hideFocus的用法
    js实现小球碰撞(数学之美)
    从浏览器的渲染原理讲CSS性能
    Jquery 常用方法经典总结
    web前端开发必备压缩工具整理
    15个精美PC/手机端自响应网页设计案例与欣赏
  • 原文地址:https://www.cnblogs.com/strengthen/p/9783619.html
Copyright © 2011-2022 走看看