zoukankan      html  css  js  c++  java
  • 字符串空格的压缩

    字符串空格的压缩:给定一个字符串,将其中连续出现的空格压缩为1个后,将其中已空格分隔的每个字符串逆序打印出来

    解题思路是:第一步先压缩连续出现的空格;第二步实现以空格分隔的每个字符串逆序打印出来

    再此,只讲一下第一步的操作:遍历字符串,遇到第一个空格,则给字符数组添加一个空格字符,此时如果后面仍有空格,执行空操作,直到遇到不是空格的,将i的位置进行赋值(后移),如果不是空格,添加进字符数组中,相应的后移。

    #include <iostream>
    #include <cstring>
    #include <cstdlib>
    using namespace std;
    
    //字符串的翻转
    void reverseString(char a[],int from,int to)
    {
        while(from<to)
        {
            char t=a[from];
            a[from++]=a[to];
            a[to--]=t;
        }
    }
    //以空格隔开 翻转一行字符串
    char* StringSpace(char a[])
    {
        if(a==NULL)
            return a;
        int len=strlen(a);
        int i,j;
        i=j=0;
        while(a[j]!='')
        {
           while(a[j]!=''&&a[j]!=' ')
             j++;
           reverseString(a,i,j-1);
           if(a[j]=='')
           {
               break;
           }
           ++j;
           i=j;
        }
        return a;
    }
    //删除连续的空格
    void removeSpace(char a[])
    {
        int mark=0;
        for(int i=0;i<strlen(a);)
        {
           if(a[i]==' ')
           {
               a[mark++]=' ';
               int ii;
               for(ii=i+1;a[ii]==' ';ii++);
               i=ii;
           }
           else
           {
    
                a[mark++]=a[i];
                i++;
           }
        }
        a[mark]='';
        
    }
    int main()
    {
        char a[100];
        cin.getline(a,100);
        //int len=strlen(a);
        //reverseString(a,0,len-1);
        removeSpace(a);
        StringSpace(a);
        cout<<a<<endl;
        system("pause");
        return 0;
    }
  • 相关阅读:
    NERDTree 快捷件
    atom安装插件
    flask/sqlalchemy
    python中SQL的使用
    vim配置
    Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights
    address-already in use 以及查看端口
    github桌面工具commit不了解决
    git add 所有文件
    Beta 冲刺(5/7)
  • 原文地址:https://www.cnblogs.com/wft1990/p/6953054.html
Copyright © 2011-2022 走看看