/**
* 實驗題目:
* 統計乙個字串**現的字元及其次數
* 實驗目的:
* 掌握二叉排序樹的構造過程及其演算法設計
* 實驗內容:
* 設計程式,讀入乙個字串,統計該字串中每個出現的字元及其
* 次數,然後按字元的ascii編碼順序輸出結果。
* 要求用一顆二叉排序樹來儲存處理結果,每個結點包含四個域,格式為:
* 字元
* 該字元出現的次數
* 指向ascii碼值小於該字元的左子樹指標
* 指向ascii碼值大於該字元的右子樹指標
*/#include
#include
#include
#define max_word (100)
typedef struct tnode
bstnode; // 結點型別
/*-----------------採用遞迴方式向二叉排序樹bst中插入乙個字元----------------*/
static void create_bst(bstnode *&bt, char ch) // 指標的引用
else if(ch == bt->ch)
bt->cnt++;
else if(ch < bt->ch)
create_bst(bt->lchild, ch);
else
create_bst(bt->rchild, ch);
}/*-----------------中序遍歷二叉排序樹bst----------------*/
static void inorder(bstnode *bt)
}/*-----------------銷毀二叉排序樹bst----------------*/
static void destroy_bst(bstnode *bt)
}int main(int argc, char *ar**)
printf("字元及出現次數:\n");
inorder(bt);
printf("\n");
destroy_bst(bt);
return 0;
}測試結果:
輸入字串:good bye!
字元及出現次數:
(1)!(1)
b(1)
g(1)
d(1)
e(1)
o(2)
y(1)
統計乙個字串中出現最多的字元
方法一 注意的點 物件的屬性獲取要用obj key 是因為這個可以通過變數來訪問屬性,迴圈遍歷用for.in這個是專門對物件的迴圈,要適應es6的for.of是要借助object.keys obj 來使鍵名生成乙個陣列。function stingcountermax str for var i 0...
js 統計乙個字串中,出現最多的字元和出現次數
運用到的關鍵函式是str.charat index 根據位置返回字元。另外,建立乙個物件o,其中存放的key為字串的各不重複的字母,鍵值為出現的次數。lang en charset utf 8 name viewport content width device width,initial scal...
Java統計乙個字串在另乙個字串中出現的次數
1.鍵盤錄入乙個大字串,再錄入乙個小字串 2.統計小字串在大字串中出現的次數 3.執行列印格式 請輸入大字串 woaichina,chinabutongyubaima,wulunchinahaishijpan,zhaodaogongzuojiushihaoma 請輸入小字串 china 控制台輸出 ...