数据结构 C++实现 基于不同策略的英文单词的词频统计和检索系统( 五 )

<< "输入的不是有效符号,请重新输入" << endl; system("pause"); //暂停} //switch} //while}//顺序查找菜单void SequenceMenu(){while(true){system("cls"); //清屏cout << "*******************基于不同策略的英文单词的词频统计和检索系统*******************" << endl;cout << "---顺序查找---" << endl;cout << "1.顺序表查找" << endl;cout << "2.链表顺序查找" << endl;cout << "3.返回上一级" << endl;cout << "请按相应的数字键进行选择:" << endl;int n;cin >> n;switch (n){case 1:SeqListMenu();//顺序查找菜单break;case 2: LinklistSeqMenu(); //链表查找菜单break;case 3: return; //结束函数default:cout << "输入的不是有效符号,请重新输入" << endl;system("pause"); //暂停break;} //switch} //while}//顺序表顺序查找菜单void SeqListMenu(){SeqList L(WF, sum);while(true){system("cls");cout << "*******************基于不同策略的英文单词的词频统计和检索系统*******************" << endl;cout << "---顺序表顺序查找---" << endl;cout << "1.词频统计" << endl;cout << "2.单词查找" << endl;cout << "3.返回上一级" << endl;cout << "请按相应的数字键进行选择:" << endl;int n;cin >> n;switch (n){case 1: L.PrintList(1); //输出线性表顺序表词频统计break;case 2: WorLocatMenu(); //顺序表顺序单词查找菜单break;case 3:return;default: cout << "输入的不是有效符号,请重新输入" << endl; system("pause");} //switch} //whilereturn;}//链表顺序查找菜单void LinklistSeqMenu(){LinkList L(WF, sum);while(true){system("cls"); //清屏cout << "*******************基于不同策略的英文单词的词频统计和检索系统*******************" << endl;cout << "---链表顺序查找---" << endl;cout << "1.词频统计" << endl;cout << "2.单词查找" << endl;cout << "3.返回上一级" << endl;cout << "请按相应的数字键进行选择:" << endl;int n;cin >> n;switch (n){case 1: L.PrintList(); //输出线性表链表词频统计break;case 2:LinklistLocateMenu(); //链表单词查找break;case 3: return;default:cout << "输入的不是有效符号,请重新输入" << endl; system("pause"); //暂停} //switch} //whilereturn;}//顺序表顺序单词查找菜单void WorLocatMenu(){SeqList L(WF , sum); system("cls"); //清屏cout << "*******************基于不同策略的英文单词的词频统计和检索系统*******************" << endl;cout << "---顺序表单词查找---" << endl;cout << "请输入要查找的单词:";string word;cin >> word; //键盘录入要查找单词auto start = system_clock::now(); //开始时间int i = L.SeqlistLocate(word); //返回下标duration diff = system_clock::now() - start; //现在时间 - 开始时间if (i+1) {cout << "此单词为:" << L.getword(i) << endl;cout << "此单词的词频:" << L.getfre(i) << endl;cout << "查找该单词所花费的时间:" << (diff.count())*1000 << "毫秒" << endl;cout << "平均查找长度:" << (sum + 1) / 2 << endl;} //ifelsecout << "查找失败" << endl;system("pause"); //暂停}//链表单词查找菜单void LinklistLocateMenu(){LinkList L(WF, sum);system("cls"); //清屏cout << "*******************基于不同策略的英文单词的词频统计和检索系统*******************" << endl;cout << "---链表单词查找---" << endl;cout << "请输入要查找的单词:";string word;cin >> word;auto start = system_clock::now(); //开始时间int i = L.Locate(word);duration diff = system_clock::now() - start; //现在时间 - 开始时间if (i) {cout << "此单词为:" << L.getdata(i).word << endl;cout << "此单词的词频:" << L.getdata(i).frequency << endl;cout << "查找该单词所花费的时间:" << (diff.count())*1000 << "毫秒" << endl;cout << "平均查找长度:" << (sum + 1) / 2 << endl;} //ifelsecout << "查找失败" << endl;system("pause"); //暂停}//顺序表折半查找菜单void HalfSortMenu(){SeqList L(WF, sum);while(true){system("cls"); //清屏cout << "*******************基于不同策略的英文单词的词频统计和检索系统*******************"