27 lines
1.3 KiB
Plaintext
27 lines
1.3 KiB
Plaintext
graph TD
|
|
A[开始] --> B[初始化: 定义英文文本];
|
|
B --> C[输出: 原始文本];
|
|
C --> D[--- ArrayList 处理 ---];
|
|
D --> E{预处理文本: 转小写, 去标点, 按空格拆分};
|
|
E --> F["将拆分后的单词存入 ArrayList (wordList)"];
|
|
F --> G[移除 ArrayList 中的空字符串];
|
|
G --> H{"计算: wordList 的大小 (单词总数)"};
|
|
H --> I[输出: 单词总个数];
|
|
I --> J{创建副本并排序: 对 wordList 进行排序};
|
|
J --> K[输出: 排序后的所有单词];
|
|
K --> L[--- HashSet 处理 ---];
|
|
L --> M{"创建: 从 wordList 创建 HashSet (uniqueWordsSet) 以获取不重复单词"};
|
|
M --> N{"计算: uniqueWordsSet 的大小 (不同单词个数)"};
|
|
N --> O[输出: 不同单词的个数];
|
|
O --> P[输出:所有不同的单词];
|
|
P --> Q[--- HashMap 处理 ---];
|
|
Q --> R{"创建: 初始化空的 HashMap (wordCountMap)"};
|
|
R --> S{遍历 wordList 中的每个单词};
|
|
S -- 存在 --> T{更新: 单词在 wordCountMap 中已存在, 个数+1};
|
|
S -- 不存在 --> U{添加: 单词首次出现, 存入 wordCountMap, 个数设为1};
|
|
T --> V[遍历完所有单词];
|
|
U --> V;
|
|
V --> W{遍历 wordCountMap};
|
|
W --> X[输出: 每个单词及其出现的次数];
|
|
X --> Y[结束];
|