• 33 第一个只出现一次的字符+ASCII码


    题目描述

    在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置
    思路:使用一个hashmap遍历一遍,统计每个字符出现的次数,然后再统计一遍,找到第一个出现一次的元素。
     
    所有的字符有256个,可以开辟一个256的数组,直接使用字符访问就可以了,会自动转换为整数。A是65。
     
     
    class Solution {
    public:
        int FirstNotRepeatingChar(string str) {
            if(str.size() == 0){
                return -1;
            }
           vector<int> hashmap(256);
            for(int i = 0;i < str.size();++i){            
                ++hashmap[str[i]]; 
            }
            for(int i = 0;i < str.size();++i){
                if( hashmap[str[i]] == 1){
                    return i;
                }            
            }
            return -1;
        }
    };
  • 相关阅读:
    prometheus之五:kube-state-metrics
    prometheus之四:node-exporter
    go语言基础
    EFK+kafka集群实战
    K8S 集群排错指南
    短信倒计时
    微信消息模板
    阿里大鱼
    mui下拉加载
    php无限极分类
  • 原文地址:https://www.cnblogs.com/dingxiaoqiang/p/8185358.html
Copyright © 2020-2023  润新知