计算字符串逆序数
字符串由大写字母A、B、C、D组成,个数和顺序不定,默认大小是字典序,计算字符串中逆序数。
样例:DBBAC
其中,D的逆序数是4
B的逆序数是1
B的逆序数是1
A的逆序数是0
C的逆序数是0
所以该字符串的逆序数是6,要求时间复杂度是O(n)
int fun(String str){ int numA=0;//A的数量 int numB=0;//B的数量 int numC=0;//C的数量 int numD=0;//D的数量 int count=0;//总计逆序数 for(int i=0;i<str.length();i++){ char ch=str.charAt(str.length()-i-1); if(ch=='A') numA++; if(ch=='B'){ count=count+numA; numB++; } if(ch=='C'){ count=count+numB+numA; numC++; } if(ch=='D'){ count=count+numA+numB+numC; numD++; } } return count; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?