在一個字符串中找到第一個只出現一次的字符
在一個字符串中找到第一個只出現一次的字符。如輸入abaccdeff,則輸出b。
(1)不使用額外空間,時間復雜度是O(n^2)
像冒泡排序那樣,內存循環對外循環判斷,比如第一個a,掃描後續元素,有a則不滿足。
(2)哈希表。
k = 0; //填寫哈希表時,每次設置成1就++k typedef struct { int flag;//初始化為0,第一次掃描到設置成1,再掃描到設置成2 int order;//初始化266,第幾個設置成1的就設置成,幾 };//哈希表的結點
掃描完字符串後,就掃描哈希表:if(flag == 1 && a[ i ].order < 當前最小order索引值 ) 就更新索引值。
時間復雜度是: 255 + 255 + n + 255 = O(n)
在一個字符串中找到第一個只出現一次的字符
相關推薦
在一個字符串中找到第一個只出現一次的字符
額外 掃描 循環 每次 時間 str 找到 一個 第一個只出現一次的 在一個字符串中找到第一個只出現一次的字符。如輸入abaccdeff,則輸出b。 (1)不使用額外空間,時間復雜度是O(n^2) 像冒泡排序那樣,內存循環對外循環判斷,比如第一個a,掃描後續元素,有a則不滿
02:找第一個只出現一次的字符
math cnblogs 第一個 code ret sin for 長度 color 02:找第一個只出現一次的字符 總時間限制: 2017-07-1218:36:281000ms 內存限制: 65536kB描述 給定一個只包含小寫字母的字符串,請你找到第一個僅出現一次
在一個字串中找到第一個只出現一次的字元,並返回它的位置, 如果沒有則返回 -1(需要區分大小寫)
題目:在一個字串(0<=字串長度<=10000,全部由字母組成)中找到第一個只出現一次的字元,並返回它的位置, 如果沒有則返回 -1(需要區分大小寫). 思路:建立資料結構HashMap,可以記錄每個字元對應出現的次數,之後遍歷字串,將對應的值儲存在HashMa
在一個字串中找到第一個只出現一次的字元(java實現)
題目:在一個字串中找到第一個只出現一次的字元。如輸入abaccdeff,則輸出b。 分析:這道題是2006 年google 的一道筆試題。 時間換空間,類似前面時間CSDN討論的一道華為的面試題:在O(n)時間內,得出一個字串每一個字元出現的次數類似; 用到這道題
在一個字串中找到第一個只出現一次的字元。(List實現)
import java.util.Scanner; import java.util.*; /** * 在一個字串中找到第一個只出現一次的字元。如輸入abaccdeff,則輸出b。(List實現) */ public class TestFourTeenth {
Java:在一個字串中找到第一個只出現一次的字元。如輸入abaccdeff,則輸出b。
在一個字串中找到第一個只出現一次的字元。如輸入abaccdeff,則輸出b。 package com.jredu.ch12; /** * 題目:在一個字串中找到第一個只出現一次的字元。如輸入abaccdeff,則輸出b。 * @author Administrator
1130 找第一個只出現一次的字元
#include <stdio.h>#include <string.h>int a[300];char ch[100100];int main(){int len,i;memset(a,0,sizeof(a));gets(ch);len=strlen
【劍指offer】面試題50:(字元流中)第一個只出現一次的字元【C++版本】
題目:字串中第一個只出現一次的字元。 在字串中找出第一個只出現一次的字元。如輸入"abaccdeff" "abaccdeff",則輸出′ b ′ ′b′。 解題思路: 1.使用雜湊表來記錄每個字元出現的次數,因為字元char char為8位,
面試題之在字符串中查找出第一個只出現一次的字符的位置
c++ bit int 相同 出現一次 試題 ems 出現次數 更新 樣例:比如“abcdabc”,第一個只出現一次的字符為d,位置為3 解決方案1:O(n*n)的復雜度 遍歷字符串中的每個字符,然後用該字符在字符串中進行查找,如果沒有找到
請實現一個函式用來找出字元流中第一個只出現一次的字元。
題目描述 請實現一個函式用來找出字元流中第一個只出現一次的字元。例如,當從字元流中只讀出前兩個字元"go"時,第一個只出現一次的字元是"g"。當從該字元流中讀出前六個字元“google"時,第一個只出現一次的字元是"l"。 輸出描述: 如果當前字元流沒有存在出現一次的字元,返回#字元。
找出一個字串中第一個只出現一次的字元
題目:在字串中找出第一個只出現一次的字元。如輸入 “abaccdeff”,則輸出b。 思路分析: (1)由於題目與字元出現的次數相關,那麼是不是可以統計每個字元在該字串中出現的次數?要達到這個目的,我們需要一個數據容器來存放每個字元出現的次數。在這個容器中可
找到第一個只出現一次的字符並返回它的位置(Python)
出現一次 ret {} baby find highlight int images 返回 s = ‘hellobaby‘ def findchar(s): for i in s: if s.count(i)==1:
34第一個只出現一次的字符
哈希表 [] 返回 下標 col 全部 組成 題目 字符串 題目描述 在一個字符串(1<=字符串長度<=10000,全部由字母組成)中找到第一個只出現一次的字符,並返回它的位置 思路: 用數組建一個哈希表,key 是字符,val是次數。 第一次遍歷,統計次數
第一個只出現一次的字符
第一個只出現一次的 hashtable har length sta get tno || htable // 使用hash表 public static char getFirstNotRepeat(char[] arr) { if (arr =
劍指Offer - 第一個只出現一次的字符位置
pid item tms cti ++ rank view gpo this https://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c?tpId=13&tqId=11187&tPag
劍指offer-第一個只出現一次的字符
題目 body HA 它的 log turn spa first 數組 題目描述 在一個字符串(1<=字符串長度<=10000,全部由字母組成)中找到第一個只出現一次的字符,並返回它的位置 解題思路 由於char類型一共有256種可能,所以開辟一個數組ha
劍指Offer-第一個只出現一次的字符位置
次數 第一個只出現一次的 nts 劍指offer 出現次數 urn for code 出現的次數 題目描述 在一個字符串(1<=字符串長度<=10000,全部由字母組成)中找到第一個只出現一次的字符,並返回它的位置 思路 思路一: 使用整型數組對出現次數進行統計
[劍指offer] 34. 第一個只出現一次的字符
大小 返回 pin col value title repeat pub char 題目描述 在一個字符串(0<=字符串長度<=10000,全部由字母組成)中找到第一個只出現一次的字符,並返回它的位置, 如果沒有則返回 -1(需要區分大小寫). 一次遍歷存儲到
JS:一個字串由[a-z]組成,找出第一個只出現一次的字母
var mystr = 'asdasdasdwdascxc'; function fis(str){//97 var len = str.length; var arr = []; f
【c語言】第一個只出現一次的字元題目:在字串中找出第一個只出現一次的字元
// 第一個只出現一次的字元題目:在字串中找出第一個只出現一次的字元。 // 如輸入“abaccdeff”,則輸出’b’。 #include <stdio.h> #include <string.h> char find_one(ch