s = 'hellobaby' def findchar(s): for i in s: if s.count(i)==1: return i, s.index(i) m,n=findchar(s) print('第一个出现一次的字符是{},位置是{}'.format(m,n))…
// test20.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #include<vector> #include<string> #include<queue> #include<stack> #include<cstring> #include<string.h> #include<deque> using…
题目如下: 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). 先上代码: class Solution { public: int FirstNotRepeatingChar(string str) { //冷静的思考这个个题目,明显我们需要完整的遍历完整个字符串才可以 int length = str.size(); ) ; vector<,);//初始化所有字母的统计为0: ;i &…
第 17 题(字符串):题目:在一个字符串中找到第一个只出现一次的字符.如输入 abaccdeff,则输出 b. 思路:此题非常容易. 最开始是想开辟一块空间存储每个字符出现的次数. 但转念一想,似乎没有必要. 对每一个字符,都依次和后面的比较,若出现了两次,则检查下一个字符,遇到只出现一次的,直接输出就好了. /* 第 17 题(字符串): 题目:在一个字符串中找到第一个只出现一次的字符.如输入 abaccdeff,则输出 b. 分析:这道题是 2006 年 google 的一道笔试题. */…
偶然在群里看到这个小题, 就用python做了做. 思路就是建一个够大的列表并初始化,把每个字符的asc码作为下标,存到列表里, 然后该位置的值就存字母的出现次数, 最后再迭代原字符串并判断列表值是否等于1. 输出第一个值为1的字符即可. ps:ord()是把字符串转换为它的asc码. 实现如下: def welcome(p_str): bit_map = [0 for x in range(1000)] temp = p_str for a in temp: bit_map[ord(a)] +…
题目描述 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写) 思路 遍历字符串,找到那个第一个count计数为1的值,返回它的下标值.. 解答 class Solution: def FirstNotRepeatingChar(self, s): # write code here if not s or len(s)>10000: return -1 else: for i in s: i…
题目描述 在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置 题目分析 只需要用map记录字符出现的次数就行,比较简单的题 代码 function FirstNotRepeatingChar(str) { if (str.length < 1 || str.length > 10000) return -1; const map = {}; for (let i = 0; i < str.length; i++) { i…
题目描述 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). 题目地址 https://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c?tpId=13&tqId=11187&rp=2&ru=/ta/coding-interviews&qru=/ta/coding-interviews/quest…
题目描述 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).   # -*- coding:utf-8 -*- class Solution: def FirstNotRepeatingChar(self, s): # write code here #字符为空则返回-1 #通过字典存字符,如果唯一存在,则其恒为1 len1= len(s) if len1<0: return -1 dic…
第一个只出现一次的字符 题目描述 在一个字符串(1<=字符串长度<=10000,全部由大写字母组成)中找到第一个只出现一次的字符,并返回它的位置. *** 思路 新建一个对象,其中key用来存放字符,value用来存放该字符出现的次数: 第一次循环,将所有字符和对应出现的次数存放在map中,时间复杂度为0(n): 第二次循环找到value为1的字符所在的位置,并返回. 实现代码 function FirstNotRepeatingChar(str) { if (str.length == 0)…