2014年3月14日 星期五

[C++]統計各個英文字母使用次數

昨天沒事情就自己玩了一下學校這次程式檢定的題目,是使用Huffman Coding壓縮文字檔
有一部分是使用了統計字母次數,想了幾個鐘頭終於想出來了!

A的ASCII=65
B的ASCII=66
...
..
Z的ASCII=91


假如要紀錄A的次數存放到字數統計的count陣列內
就使用count[讀入的字元-'A'] =count[讀入的字元-'A'] +1

EX:
目前讀入字元為:A (ascii=65)
count[A-'A']=count[A-'A']+1  會等於count[65-65]=count[65-65]+1
所以
索引值0 對應存A的次數
索引值1 對應存B的次數
索引值2 對應存C的次數
索引值3 對應存D的次數
索引值4 對應存E的次數

...
...
索引值25 對應存Z的次數


Code:



小弟本身比較笨只能想到這個方法了
如果有更好的寫法麻煩請高手不吝指教一下!!
謝謝!!

沒有留言: