zoukankan      html  css  js  c++  java
  • 算法初步——哈希表B1043输出PATest

    #include <bits/stdc++.h>
    #include<math.h>
    #include <string>
    using namespace std;
    const int MAX_LEN = 10005;
    char str[MAX_LEN];
    int hashTable[30] = {0};
    int main(){
        cin>>str;
        int len = strlen(str);
        int count = 0;
        //map<char,int> result;
        for(int i =0;i<len;++i){
            if(str[i] == 'P' || str[i] == 'A' || str[i] == 'T' || str[i] == 'e' || str[i] == 's' || str[i] == 't'){
                count++;
            }
        }
        map<char,int> result;
        //vector<char> result[count];
        for(int i =0;i<len;++i){
            if(str[i] == 'P' || str[i] == 'A' || str[i] == 'T' || str[i] == 'e' || str[i] == 's' || str[i] == 't'){
                result[str[i]]++;
            }
        }
        map<char,int>::iterator iter;
        /*while(count != 0){
            
        }*/
        /*for(iter = result.begin();iter != result.end();iter++){
            if(iter->)
        }*/
        for(int i =0;i<count;++i){
            //map<char,int>::iterator iter;
            iter = result.begin();
            for(;iter != result.end();++iter){
                if(iter->first == 'P' && iter->second > 0){
                    cout<<iter->first;
                    iter->second--;
                    break;
                }
            }
            iter = result.begin();
            for(;iter != result.end();++iter){
                if(iter->first == 'A' && iter->second > 0){
                    cout<<iter->first;
                    iter->second--;
                    break;
                }
            }
            iter = result.begin();
            for(;iter != result.end();++iter){
                if(iter->first == 'T' && iter->second > 0){
                    cout<<iter->first;
                    iter->second--;
                    break;
                }
            }
            iter = result.begin();
            for(;iter != result.end();++iter){
                if(iter->first == 'e' && iter->second > 0){
                    cout<<iter->first;
                    iter->second--;
                    break;
                }
            }
            iter = result.begin();
            for(;iter != result.end();++iter){
                if(iter->first == 's' && iter->second > 0){
                    cout<<iter->first;
                    iter->second--;
                    break;
                }
            }
            iter = result.begin();
            for(;iter != result.end();++iter){
                if(iter->first == 't' && iter->second > 0){
                    cout<<iter->first;
                    iter->second--;
                    break;
                }
            }
    
        }
        system("pause");
        return 0;
    }
  • 相关阅读:
    Springboot vue 前后分离 跨域 Activiti6 工作流 集成代码生成器 shiro权限
    mybatis3批量更新 批量插入
    Java GC的工作原理详解
    Hadoop的Map侧join
    cut 命令
    head 与 tail
    常用正则
    vim 设置
    Java泛型初探
    linux修改PS1,自定义命令提示符样式
  • 原文地址:https://www.cnblogs.com/JasonPeng1/p/12161128.html
Copyright © 2011-2022 走看看