zoukankan      html  css  js  c++  java
  • 字符流中第一个不重复字符

    题目描述

    请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。

    输出描述:

    如果当前字符流没有存在出现一次的字符,返回#字符。
    解题:简单hash应用

    c++代码如下:
    class Solution
    {
    public:
      //Insert one char from stringstream
        string s;
        int hash[256]={0};
        void Insert(char ch)
        {
           s+=ch;
           hash[ch]++;//在数组中自动转化为其对应的ascll码 
        }
      //return the first appearence once char in current stringstream
        char FirstAppearingOnce()
        {
        for(int i=0;i<s.size();i++){
            if(hash[s[i]]==1){
                return s[i];
            }
        }return '#';
        }
    
    };

    java代码如下:

    public class Solution {
        //Insert one char from stringstream
            String s="";//java代码中这个必须赋为空
        int hash[]=new int [256];
        public void Insert(char ch)
        {
            s+=ch;
           hash[ch]++;//在数组中自动转化为其对应的ascll码        
        }
      //return the first appearence once char in current stringstream
        public char FirstAppearingOnce()
        {
            for(int i=0;i<s.length();i++){
            if(hash[s.charAt(i)]==1){
                return s.charAt(i);
            }
        }return '#';
        }
        };
    不一样的烟火
  • 相关阅读:
    两种序列化方式Serializable和Parcelable
    函数初识
    编码理解
    分享------关于复合赋值运算符
    pycharm 设置鼠标控制字体大小
    Mac下python3的安装和PyCharm中python3的使用
    python编码问题总结
    python----编码详解
    python基础二
    python 基础一
  • 原文地址:https://www.cnblogs.com/cstdio1/p/11245291.html
Copyright © 2011-2022 走看看