zoukankan      html  css  js  c++  java
  • N34_第一个只出现一次的字符

    题目描述

    在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).
    package new_offer;
    /**
     * 在一个字符串(0<=字符串长度<=10000,全部由字母组成)
     * 中找到第一个只出现一次的字符,并返回它的位置, 
     * 如果没有则返回 -1(需要区分大小写).
     * @author Sonya
     *思路:空间换时间,为每个字符计数。遍历得到那个字符。
     */
    public class N34_FirstNotRepeatingChar {
    	public int FirstNotRepeatingChar(String str) {
    		char []ch=str.toCharArray();
    		int len=ch.length;
    		//if(len<=0) return -1;
    		int []a=new int['z'-'A'+1];
    		
    		for(int i=0;i<len;i++) {
    			a[ch[i]-'A']++;
    		}
    		for (int i = 0; i < ch.length; i++) {
    			if (a[ch[i]- 'A'] == 1) {return i;}
    		}
    		return -1;
        }
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    
    	}
    
    }
    

      

  • 相关阅读:
    Oracle:SQL语句--撤销用户权限
    Oracle:SQL语句--给用户赋权限
    RSTP端口状态迁移过程详解
    LSB算法分析与实现
    工厂方法模式
    Ceasar
    区域性名称和标识符
    Packet Tracer网络模拟实验实记
    H3C-OSPF
    H3C-RIP
  • 原文地址:https://www.cnblogs.com/kexiblog/p/11152265.html
Copyright © 2011-2022 走看看