博客
关于我
【PTA】删除重复字符
阅读量:808 次
发布时间:2019-03-25

本文共 709 字,大约阅读时间需要 2 分钟。

编写一个程序,能够将用户输入的字符串去掉重复字符并按字符ASCII码顺序输出。以下是详细的解决方案:

为了完成这个任务,我们可以利用C++标准库中的集合(set)结构,其具有自动去重和有序插入的特性。具体步骤如下:

  • 包括必要的头文件,例如 `

  • 使用一个集合存储字符,set< char > s;。

  • 读取输入字符串,使用 getline 函数,因为它能够处理由回车结束的字符串。

  • 遍历字符串中的每个字符,依次将其添加到集合中。由于集合的性质,自动去重并按字符ASCII顺序排列。

  • 将集合中的所有字符依次输出,构成结果字符串。

  • 以下是代码实现:

    #include 
    #include
    #include
    #include
    using namespace std;int main() { string str = ""; cin >> str; set
    s; for(int i = 0; i < str.length(); i++) { s.insert(str[i]); } for(set
    ::iterator it = s.begin(); it != s.end(); it++) { cout << *it; } return 0;}

    这个程序首先读取输入字符串,然后使用set< char >结构去重排序,最后输出有序结果。这样不仅理清了代码结构,还确保了按要求完成任务。

    转载地址:http://zqayk.baihongyu.com/

    你可能感兴趣的文章
    OpenCV:概念、历史、应用场景示例、核心模块、安装配置
    查看>>
    Openlayers Source基础及重点内容讲解
    查看>>
    openlayers 入门教程(八):Geoms 篇
    查看>>
    openlayers 入门教程(四):layers 篇
    查看>>
    Openlayers中使用Cluster实现点位元素重合时动态聚合与取消聚合
    查看>>
    Openlayers中使用Cluster实现缩放地图时图层聚合与取消聚合
    查看>>
    Openlayers中使用Image的rotation实现车辆定位导航带转角(判断车辆图片旋转角度)
    查看>>
    Openlayers中点击地图获取坐标并输出
    查看>>
    Openlayers中设置定时绘制和清理直线图层
    查看>>
    Openlayers图文版实战,vue项目从0到1做基础配置
    查看>>
    Openlayers实战:modifystart、modifyend互动示例
    查看>>
    Openlayers高级交互(10/20):绘制矩形,截取对应部分的地图并保存
    查看>>
    Openlayers高级交互(16/20):两个多边形的交集、差集、并集处理
    查看>>
    Openlayers高级交互(17/20):通过坐标显示多边形,计算出最大幅宽
    查看>>
    Openlayers高级交互(19/20): 地图上点击某处,列表中显示对应位置
    查看>>
    Openlayers高级交互(8/20):选取feature,平移feature
    查看>>
    openlayers:圆孔相机根据卫星经度、纬度、高度、半径比例推算绘制地面的拍摄的区域
    查看>>
    OpenLDAP(2.4.3x)服务器搭建及配置说明
    查看>>
    OpenLDAP编译安装及配置
    查看>>
    OpenMCU(一):STM32F407 FreeRTOS移植
    查看>>