zoukankan      html  css  js  c++  java
  • 434. Number of Segments in a String

    原题:

    434. Number of Segments in a String

    解题:

    刚看到题目时,觉得可以通过统计空格个数,但想想有可能会有多个空格的情况

    思路:

    一:遍历字符,if条件碰到非空格时,计数加1,然后while循环跳过非空格字符,一直到最后

    二:设置flag初始为0,当碰到非空格时,计数加1,且flag置1,当flag为1且碰到空格时,flag再重置为0

    思路一是自己想的,思路二更巧妙,是论坛里摘抄的

    AC代码:

    思路一:

    class Solution {
    public:
    	int countSegments(string s) 
    	{
    		int len = s.length();
    		int i = 0;
    		int count = 0;
    		for(; i < len; i++)
    		{
    			if(s[i]!=' ')
    			{
    				count++;
    				while(s[i]!=' '&&i<len)
    				{
    					i++;
    				}
    				i -= 1; //回退一个位置,因为for循环会累加
    			}
    			
    		}
    		return count;
    	}
    };
    

     

      思路二:

    class Solution {
    public:
        int countSegments(string s) {
            int count=0;
            int flag = 0;
            for (int i=0;i<s.size();i++) {
                if (flag ==0 && s[i]!=' ') {
                    count++;
                    flag = 1;
                }
                if (flag ==1 && s[i]==' ') {
                    flag = 0;
                }
                
            }
            return count;
        }
    };
    

      

  • 相关阅读:
    运维工程师的四个阶段
    必须知道的Linux内核常识详解
    Centos7/RHEL7 开启kdump
    sort实现ip排序
    如何判断是否开启超线程
    Django---进阶12
    Django---进阶11
    前端---进阶8
    前端---进阶7
    前端---进阶6
  • 原文地址:https://www.cnblogs.com/xqn2017/p/8493226.html
Copyright © 2011-2022 走看看