C 統計英文文字中的單詞數並排序

2022-02-14 21:04:12 字數 1063 閱讀 8538

思路如下:

1.使用的hashtable(高效)集合,記錄每個單詞出現的次數

2.採用arraylist對hashtable中的keys按字母序排列

3.排序使用插入排序(穩定)

public void statisticswords(string path)

hashtable ht = new hashtable(stringcomparer.ordinalignorecase);

streamreader sr = new streamreader(path, system.text.encoding.utf8);

string line = sr.readline();

string wordarr = null;

int num = 0;

while (line.length > 0)

// else

//

//}//line = sr.readline();

wordarr = line.split(' ');

foreach (string s in wordarr)

*]", "", regexoptions.compiled);

//將單詞加入雜湊表

if (ht.containskey(s))

else

}line = sr.readline();

}arraylist keyslist = new arraylist(ht.keys);

//對hashtable中的keys按字母序排列

keyslist.sort();

//按次數進行插入排序【穩定排序】,所以相同次數的單詞依舊是字母序

string tmp = string.empty;

int valuetmp = 0;

for (int i = 1; i < keyslist.count; i++)

keyslist[j] = tmp;//j=0

}//列印出來

foreach (object item in keyslist)

}

演算法 去除英文文字中重複單詞

假設有一段英文文字,其中有重複的單詞,要求去除重複單詞,只保留乙個,例如 hello world hello python 程式輸出為 hello world python 1 首先我們得把這段文字中的每個單詞提取出來 2 提取出每個單詞後,我們只需遍歷這個列表,然後再判斷這個單詞是否存在這個空列表...

C語言資料結構 統計英文文字每個「單詞」出現次數

假設每行文字長度不超過80個字元,每個單詞由空格分隔,單詞長度不超過20個字元。現在要從鍵盤上輸入一段英文文字,當輸入 stop 後,結束輸入過程。先程式設計統計在這段文字中每個單詞出現的個數。通過空格判斷單詞,單詞存放在結構體當中,search函式檢測當前單詞是否為重複出現的單詞 cut函式分隔字...

統計乙個文字的字元 單詞數

文字操作是最常見的,以例子的形式來驅動程式的編寫 encoding utf 8 import time keep defnormalize s 大寫轉換成小寫,並且剔除數字等開頭或不在列表中的字元,返回正常字串 result for c in s.lower if c in keep result ...