问题描述

给定一个字符串,删除相邻重复字符,要求不创建新的字符串。

输入:"abbc"
输出:"abc"

输入:"cccccbbdbbaaaa"
输出:"cbdba"

C++代码

快慢指针:

#include <iostream>using namespace std;int main(){char str[] = "cccccbbdbbaaaa";int slow = 0;int fast = 1;while(str[slow] != '\0'){while(fast < strlen(str) && str[slow] == str[fast]){fast++;}str[++slow] = str[fast];}cout << str << endl;
//    cout << strlen(str) << endl;return 0;
}

代码分析

时间复杂度 O(n),遍历一遍字符串;
空间复杂度 O(1),原地更改字符串,不创建新的空间。

【面试题记】删除字符串中相邻重复字符相关推荐

  1. C++实现删除字符串中所有重复出现的字符

    C++实现删除字符串中所有重复出现的字符 #include<iostream> using namespace std; char* DeleteRepeatCharacters(char ...

  2. 输入一个长度不超过100的字符串,删除串中的重复字符。

    #include <stdio.h> #include <string.h> #define N 200 int main() { char a[N]; //存储字符串. in ...

  3. Lc1047删除字符串中所有重复项

    删除字符串中所有重复项 利用栈来存储, 遍历字符和当前栈顶元素进行比较,如果栈不为空stack != null,并且等于遍历到的当前元素 == 栈顶元素value = stack[stack.leng ...

  4. python删除指定位置的字符串_python去除区域 python删除字符串中指定位置字符

    python删除字符串中指定位置字符 原程序是这样的: ser = serial.Serial("/dev/ttyAMA0", 9600) def main字符串的话,你可以把他当 ...

  5. python使用正则表达式删除字符串中的其它字符只保留数字和字母

    python使用正则表达式删除字符串中的其它字符只保留数字和字母 #python使用正则表达式删除字符串中的其它字符只保留数字和字母 # Python code to demonstrate # to ...

  6. java练习: 编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符,例如:

    import java.util.ArrayList; import java.util.Scanner;/*** 7. 编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符,例如:* 原始字 ...

  7. 删除字符串中的指定字符

    题目 习题8-6 删除字符 (20 分) 本题要求实现一个删除字符串中的指定字符的简单函数. 函数接口定义: void delchar( char *str, char c ); 其中char *st ...

  8. 删除字符串中指定的字符形成字符串

    //删除字符串中指定的字符形成字符串 #include <stdio.h> #include <string.h>void fun(char s[],int c) {int n ...

  9. 删除字符串中的特定字符

    当要删除字符串中的特定字符时,只需要用find()和erase()两个函数搭配使用即可,find()用于找到特定字符的位置,而erase()则用于删除该位置上的字符. find(c,pos)表示从po ...

最新文章

  1. ubuntu 14.10安装zabbix(lnmp环境)
  2. sigsuspend的使用
  3. 第五天学习Java的笔记(if,switch顺序结构)
  4. 不停刷朋友圈的人_不停刷新闻、朋友圈、微信群的朋友,休息一下,看多了伤身!...
  5. c++ 使用nacos_《Nacos系列》之注册中心
  6. Scylla——开源免费的优秀代理 IP 池:自动验证、JSON API、基于 React 的 Web UI、Docker 支持...
  7. 漫步线性代数十一—— 四个基本子空间
  8. php微信浏览器清空cookie,微信内置浏览器中的cookie很诡异呀
  9. 如何在shell中执行 字符串拼接起来的命令 cmd = ls / 执行方法:$cmd
  10. WINDOWS 下 MYSQLQ全库数据倒出和执行计划加入
  11. 4.XXE (XML External Entity Injection)
  12. 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_20-CMS前端页面查询开发-页面原型-页面内容完善...
  13. C语言嵌入式系统编程修炼之键盘操作
  14. 阿里云4核8G服务器10M带宽支持在线人数并发量计算
  15. 三分搜索--hdu2241 考研路茫茫——早起看书
  16. 充分利用公网 -- 将联通光猫设置为桥接
  17. mybatis第十话 - mybaits整个事务流程的源码分析
  18. android listview 的下拉刷新
  19. matlab二阶滤波器设计,基于matlab的各类滤波器设计
  20. 【雅思写作】第一章:写作基础

热门文章

  1. 操作系统:电脑系统盘常见文件夹的功能详解
  2. Brain:临床前和早期阿尔茨海默病的睡眠和纵向认知表现
  3. xshell命令大全编译c语言,Xshell脚本——make命令
  4. requests-html 爬虫新库
  5. 计算机专业考研青岛,青岛大学(专业学位)计算机技术考研难吗
  6. 独立产品灵感周刊 DecoHack #029 - 随便逛逛谷歌街景
  7. Liip-imagine-bundle 在 Nignx 无法生成缓存图的问题
  8. 4.2.3 积分法(二)——分部积分法
  9. PC浏览器添加背景音乐 VS 手机浏览器添加背景音乐
  10. 基于html+JS实现canvas简易画图工具