【原创】打印一个string 字符串中重复字符的次数

C++字符串操作:从std::string原理到高效工程实践 字符串处理是编程中的基础操作,涉及内存管理、数据结构和算法等核心概念。在C++中,std::string通过RAII(资源获取即初始化)机制自动管理内存,实现了类型安全和高效操作。其底层采用短字符串优化(SSO)等策略,在栈上存储短字符串以避免堆分配开销,显著提升性能。理解这些原理对于编写高性能、安全的代码至关重要。在实际工程中,字符串操作广泛应用于配置文件解析、网络数据处理、日志系统等场景。本文聚焦C++字符串,深入解析std::string的设计与高效使用方法,涵盖内存管理、查找比较、数值转换等关键操作 阅读详情

public class MyClass
{
public static void GetNumber(string Target)
{ 
    string  MyString=Target;
while(MyString.Length!=0)
{
int i=0;
int count=0;
string s=MyString[0].ToString();
while(i <MyString.Length)
{
    if(MyString[i++].ToString()==s)
count++;
}
Console.WriteLine("{0}共有个{1}",s,count);
MyString.Replace(s,"");//把等于第一个字符的都删除掉  估计改成stringbuilder 类型的更好些
}
}
public static void Main()
{
      string a="aaaaaaaazzzbbbbbccccmmmmddddeeefffdddgggghhhiiaaaaiijbbbbjjjkkk";
  MyClass.GetNumber(a);
  Console.Read();
}
}
终极改进版如下
public static void GetNumber(string Target)
{ 
    StringBuilder  MyString=new StringBuilder(Target);
while(MyString.Length!=0)                      //只要长度不为零  就可以进行
{
int i=1;                              // 只要有长度 肯定至少有一个字符了
int count=1;                          // 至少一个了已经
string s=MyString[0].ToString();       
while(i <MyString.Length)
{
    if(MyString[i++].ToString()==s)    //这块估计最耗费时间了  不用比较第一个字符了肯定相等的 直接从第二个开始比较
count++;
}
Console.WriteLine("{0}共有个{1}",s,count);
MyString.Replace(s,"");//把等于第一个字符的都删除掉
}
}

 

网友更好的

public void CountCharNum(string str)
        {
            int cnt = 0;
            while ((cnt=str.Length) != 0)
            {
                string sub = str.Substring(0, 1);
                str = str.Replace(sub, "");
                cnt -= str.Length;
                Console.WriteLine(sub + "=" + cnt.ToString());
            }
        }

找出一个字符串中出现次数最多的子字符串,并返回重复次数 找出一个字符串中出现次数最多的子字符串,并返回重复次数。使用java编写 立即下载

相关推荐

查找字符串中出现重复次数最多的字符

查找字符串中出现重复次数最多的字符,面试中经常遇到的面试题,对找工作很有帮助,拿出来与大家一起学习进步。

打印字符串中重复的字符

要求,将字符串中重复的字符串打印出来,并排序,比如输入aabbddwwee,则输出abadw. /*打印字符串中重复的字符*/ #include #include #include struct aa{ int a; int count; }; int main(void) { char str[10000]; struct aa bb[256]; int i; gets(str);

q18108398942的博客 999

AI大模型与碳足迹评估结合模式及示范案例

AI大模型与碳足迹评估相结合,可以提供更精确、更快速的碳排放量计算,优化减排策略,并促进可持续发展目标的实现。

贾贾的博客 3943

打印输出一个字符串中重复的字符

Problem:给定一个字符串,打印输出其中重复的字符。 Example:给定字符串“ABCDBGAC”,打印“A B C” 思路分析 解法:(双层循环,简单暴力)外层循环控制每次要比较的字符,内层循环将所有字符与外层循环比较(除开外层循环原位置的字符),相同则放入ArrayList中,最后打印ArrayList元素。 代码实现: public class FindDuplicateC...

WeekenLin的博客 3891

Unity动画状态机实战:Trigger和Bool参数到底怎么选?附5个常见场景解析

本文深入解析Unity动画状态机中Trigger和Bool参数的核心差异与应用场景。通过对比两者在描述瞬时事件与持续状态上的本质区别,并结合角色移动、攻击连招、跳跃落地、受击死亡及环境交互等5个实战场景,提供了清晰的选择逻辑与避坑指南,帮助开发者构建更健壮、易维护的动画逻辑。

weixin_29009501的博客 120

Windows 高精度计时器:QueryPerformanceCounter 原理、陷阱与最佳实践

本文深入解析Windows高精度计时器QueryPerformanceCounter(QPC)的工作原理、常见陷阱及最佳实践。QPC通过读取硬件计时器(如TSC)实现微秒级精度,适用于游戏开发、音视频处理等高性能场景。文章详细探讨了多核同步、动态频率调整等挑战,并提供了优化代码示例和性能对比数据。

weixin_33391446的博客 271

找出字符串中重复的字符 打印出来

1.  第一种方法:      利用简单的计算  package com.first; public class moreChar { /** * @param args */ public static void main(String[] a

分享技术,享受生活 1382

《遥感大模型生产级实战:从数据到决策的端到端AI工程》系列第一部分:AI遥感工程师的基础设施与工具链-文章 4:传统遥感分析与机器学习基线

本章将系统性地介绍经典遥感分析工作流,从数据预处理到多维度特征工程,再到如何利用经典的机器学习模型(如随机森林、支持向量机)进行监督与非监督学习。我们将通过一个完整的“智慧农业作物分类”项目实战,展示如何利用我们之前构建的数据湖和工具链,从原始数据到最终的分析结果,构建一个性能可靠、可解释性强的基线系统。更重要的是,我们将深入剖析这种传统方法的局限性,从而为后续章节引入遥感大模型的必要性提供强有力的论证。

panshengwu的博客 705

Java删除字符串中的重复字符

Java删除字符串中的重复字符 【问题描述】删除字符串中的重复字符. 【输入形式】输入一个字符串,全为字母字符 【输出形式】输出删除重复字符后的字符串 【样例输入】abbcbd 【样例输出】abcd 【样例说明】删除第二个和第三个“b”,保留第一个遇到的不同字符 import java.util.*; public class Test{ public static void main(Str...

不爱赖床的懒虫博客 3203

在 SAP 资产模块跨 2024 和 2025 两个年度操作后,运行 AFAB 测试无数据,大概率是折旧已完全过账、跨期配置异常或资产数据异常等原因

SAP资产模块跨年度操作AFAB测试无数据的排查方案:首先检查折旧是否已完全计提,确认资产主数据价值;其次验证跨年度配置是否合规,包括全局配置、折旧范围和账期状态;然后重新执行AFAR折旧计算刷新数据;排查资产主数据异常或业务操作冲突;最后核对AFAB运行参数是否正确设置,包括会计年度、期间范围和运行模式等。

金牌架构师 866

高通开发系列 - Camera之摄像头调试记录

记录一些调试内容

fulinux的博客 1217

实现给定一个字符串剔除重复字符,并统计各个字符出现的次数

import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; public class test { public static void main(String[] args) { String oldstring="adbgfxedaabnxjhssaa";

m0_37905429的博客 2975

HFSS实战项目——高带外抑制特性SIW带通滤波器

本文对单级滤波器和双级滤波器的设计、工作原理及仿真结果进行了详细分析,并验证了双级SIW带通滤波器在性能方面的优越性,为微波通信系统中滤波器的设计和应用提供了重要参考。

2401_87464239的博客 1816

如何打印String中的第一个非重复字符

hello”中,除了'l'之外都是非重复的,但'h'是第一个非重复字符。

ZhaFi人 572

使用LSTM实现自动调制识别(RML2018.01a)

目录一、LSTM的代码实现1.1 导入包1.2 数据读取及数据集划分1.3 数据预处理1.4 构建LSTM模型 本文基于RML2018.01a大型数据集,给出LSTM的信号识别的实现方式(附代码) RML2018.01a数据集信息如下: 模型 传送门 CNN/ResNet 使用CNN/ResNet实现自动调制识别(RML2018.01a) LSTM 使用LSTM实现自动调制识别(RML2018.01a)) 一、LSTM的代码实现 1.1 导入包 import numpy as np

QAQIknow的博客 6123

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

如何将字符串中的重复字符去除,并且输出每个字符出现的次数(不改变原字符串顺序)

这是博主第二次写博文,全部灵感源于作业需要,有写的不妥的地方还请谅解。。。。。 首先我们先获取一个字符串 Scanner input = new Scanner(System.in); String str = input.nextLine(); 我们先定义一个字符串 str 用来接收,使用 input.nextLine()可以忽略输入字符串的空格,得到一个连续的字符。 为了不改变原字符串的顺序,我们再定义一个新字符串 str2 ,在 str2 上进行修改 String str2;

qq_63607681的博客 2189

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

String类练习讲解-统计字符串中出现连续字符的次数

public class TestStringCount { public static void main(String[] args) { String str = "ggggHelloaaaworldmccyloveokgggg"; int count = 0; boolean b = false;//标志是否连续 for (int i = 0; i char

Mo_KaIseR的博客 699

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

写一个方法,参数接收一个String类型的对象,最终可以把这个字符串参数中出现过的每一个字母打印出来 例如: "wwqweqdasdafdsfdsferer" 将来方法接收这个参数后会打印:

import java.util.*;public class exercise2 { public static void main(String[] args){ Set set = new LinkedHashSet(); String string = "wwqweqdasdafdsfdsferer"; char[] ch = stri

知识共享,快乐分享 4346

补坑:Java的字符串String类(2):一些OJ题目

OJ题目:力扣387,125;牛客网最后一个单词长度

cx不会编程的博客 271

LeetCode 热题 HOT 100-无重复字符的最长子串

文章目录LeetCode 热题 HOT 100题无重复字符的最长子串 题目JAVA实现代码题目分析总结附String类常用方法 LeetCode 热题 HOT 100题 前言 个人愚笨,在看题的时候一脸懵逼,开始写代码也写的好复杂,后来冷静下来分析了分析,然后参考了评论区某大神的便利写法,找到了规律,感觉自己动手写出来才OK,然后就在原来自己写的复杂代码上变了一种写法,从int数组变成了List集合,集合真心比数组好用,不过还是要经常动手不然好多基础理论性的东西都忘完了,太依赖现在的框架和自动填充了,

qq_43591363的博客 476

java去掉字符串中重复的字符(带有逗号,排序)

List item

红枫 4494

C++ String類的研究1: append 方法

1.append方法: 在指定string尾部添加字串。 append方法的返回的结果为新string的引用。 常用的有6種重載: a. basic_string &append(const basic_string &str); 将basic_string 类型的参数添加到原string的末尾 舉例:  string testappend = "Hello World"; test

ffjbq的专栏 6504

【C++】string类的赋值以及拼接方法

可以利用以下5种方式 #include <iostream> #include "string" //操作字符串必须包含的头文件 using namespace std; void main() { string s1 = "aaaaa"; string s2("bbbbb"); string s3 = s2; //通过拷贝构造函数,初始化s3 str...

欢迎关注【微信公众号】测试开发Guide,从功能测试进阶测试开发 2595

给定一字符串,求字符串中第一次出现的非重复的字符,例如abaaedgff,输出b.(Java 实现)

//方法1: public class GetFirstNotRepeatChar { public static char getChar(String s){ char[] c = s.toCharArray(); int[][] tmp = new int[26][2];//临时数组,记录元素出现的次数,第1列记录出现的次数,第2列记录元素的下标 int pos = 26;

likemecch的专栏 3383

13.Java之String 类

由于String的不可更改特性,为了方便字符串的修改,Java中又提供StringBuilder和StringBuffer类。这两个类大 部分功能是相同的。方法说明str)在尾部追加,相当于String的+=,可以追加:boolean、char、char[]、double、float、int、long、Object、String、StringBuff的变量获取index位置的字符获取字符串的长度获取底层保存字符串空间总的大小扩容char ch)将index位置的字符设置为ch。

m0_47017197的博客 572

java中寻找字符串中重复的字符(转)

1 import java.util.HashMap; 2 import java.util.Map; 3 import java.util.Set; 4 5 public class findMulString { 6 7 /** 8 * @param args 9 */ 10 public static ...

aq9618154的博客 383
下一篇: 【2010支付宝西安最新笔试题..】 C# 实现 100G数据文件查找100个最大值
happyer_longlong
博客等级 码龄17年 31粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值