zoukankan      html  css  js  c++  java
  • 面试题35 第一个只出现一次的字符位置

    题目描述

    在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符的位置。若为空串,返回-1。位置索引从0开始
     1 class Solution {
     2 public:
     3     int FirstNotRepeatingChar(string str) {
     4         if (str.length() == 0)
     5             return -1;
     6         unsigned int hashtable[256] = {0};
     7         for (int i = 0; str[i] != ''; i++){
     8             hashtable[str[i]]++;
     9         }
    10         char ch;
    11         for (int i = 0; i < str.length(); i++){
    12             if (hashtable[str[i]] == 1){
    13                 ch = str[i];
    14                 break;
    15             }
    16         }
    17         for (int i = 0; str[i] != ''; i++){
    18             if (ch == str[i])
    19                 return i;
    20         }
    21         return -1;
    22     }
    23 };
  • 相关阅读:
    selectHelper
    Windows Server 2003 下实现网络负载均衡(2) (转)
    顺序栈
    线性表链式存储
    线性表顺序存储
    Swift
    组件化
    swift
    Swift
    Swift
  • 原文地址:https://www.cnblogs.com/wanderingzj/p/5358532.html
Copyright © 2011-2022 走看看