zoukankan      html  css  js  c++  java
  • 求字符数组逆序数(poj1007)

    int InversionNumber(char* s,int len)  

    • {  
    •     int ans=0;  //s逆序数  
    •     int A,C,G;  //各个字母出现次数,T是最大的,无需计算T出现次数  
    •     A=C=G=0;  
    •     for(int i=len-1;i>=0;i--)  
    •     {  
    •         switch(s[i])  
    •         {  
    •             case 'A':A++;break;  //A是最小的,无逆序数  
    •             case 'C':  
    •                  {  
    •                      C++;  
    •                      ans+=A;  //当前C后面出现A的次数就是这个C的逆序数  
    •                      break;  
    •                  }  
    •             case 'G':  
    •                 {  
    •                     G++;  
    •                     ans+=A;  
    •                     ans+=C;  
    •                     break;  
    •                 }  
    •             case 'T':  
    •                 {  
    •                     ans+=A;  
    •                     ans+=C;  
    •                     ans+=G;  
    •                     break;  
    •                 }  
    •         }  
    •     }  
    •     return ans;  
    • }  
  • 相关阅读:
    MySQL索引原理
    MyBatis执行流程的各阶段介绍
    实现单栈实现支持getMin的栈
    缓存LRU算法——使用HashMap和双向链表实现
    Hystrix资源隔离
    各种负载均衡策略-图解
    接口调用超时的实现原理
    Spring Bean生命周期的各阶段介绍
    TAR命令详解 复习
    INT MOD
  • 原文地址:https://www.cnblogs.com/earendil/p/4295650.html
Copyright © 2011-2022 走看看