面試100 13第一個只出現一次的字符
第一個只出現一次的字符
方法1 :
第一個只出現一次的字符。
(1)考慮使用一個hash表,將各個字符映射到表中,然后表中存儲有該字符出現的次數,以及首次出現的下標。
(2)映射完成之后,掃描hash數組查找出現次數為1的字符,并且其首次出現下標為最小。
需要存儲首次出現的下標,造成存儲位置浪費。































































方法2 :
建立一個長度為256的hash數組,掃描到對應的字符,即更新hash表內存儲出現的次 數。
需要兩次掃描字符串,第一次掃描統計字符串的出現次數,第二次掃描確定出現一次的字符及其位置 ,比方法1,比較省空間。
代碼如下:



































posted on 2011-05-17 10:25 kahn 閱讀(540) 評論(0) 編輯 收藏 引用 所屬分類: 算法相關