电子商务网站建设与管理第四章答案怎么上国外购物网站

张小明 2026/1/1 14:18:07
电子商务网站建设与管理第四章答案,怎么上国外购物网站,php网站开发 总结,如何提高网站设计能力【题目描述】在进行文法分析的时候#xff0c;通常需要检测一个单词是否在我们的单词列表里。为了提高查找和定位的速度#xff0c;通常都画出与单词列表所对应的单词查找树#xff0c;其特点如下#xff1a;1#xff0e;根结点不包含字母#xff0c;除根结点外每一个结点…【题目描述】在进行文法分析的时候通常需要检测一个单词是否在我们的单词列表里。为了提高查找和定位的速度通常都画出与单词列表所对应的单词查找树其特点如下1根结点不包含字母除根结点外每一个结点都仅包含一个大写英文字母2从根结点到某一结点路径上经过的字母依次连起来所构成的字母序列称为该结点对应的单词。单词列表中的每个单词都是该单词查找树某个结点所对应的单词3在满足上述条件下该单词查找树的结点数最少。4例如图3-2左边的单词列表就对应于右边的单词查找树。注意对一个确定的单词列表请统计对应的单词查找树的结点数包含根结点。【输入】为一个单词列表每一行仅包含一个单词和一个换行/回车符。每个单词仅由大写的英文字母组成长度不超过63个字母 。文件总长度不超过32K至少有一行数据。【输出】仅包含一个整数该整数为单词列表对应的单词查找树的结点数。【输入样例】A AN ASP AS ASC ASCII BAS BASIC【输出样例】131. 关于那个“文件总长度 32K”题目给的限制很有意思单词长度不超过 63。文件总长度不超过 32K。第一眼看到 63下意识觉得“这题很小”随手开了个 tre[2000]。结果仔细一算不对劲32K 是多少在C里一个char就是 1 字节。32K32*102432768字节。这意味着最坏情况下比如所有单词都长得不一样这棵树得存 3 万多个字符。如果要建树数组至少得开到 40000 才稳。要是按 2000 开读到第 2001 个字符的时候程序直接就炸了越界。教训以后看到 32K、64M 这种单位第一反应必须是换算成字节数。2. 为什么用 vector 存 Trie通常 Trie 树节点是这样写的struct node { char data; node* next[26]; // 或者 int next[26] };这样写查找快但如果节点很多且分叉少空间浪费严重。改用vector邻接表写法struct node { char data; vectorint son; // 只存存在的儿子下标 } tre[50000]; // 数组一定要开够虽然查找时要遍历son数组多一个 for 循环但省内存而且代码写起来其实就是个 DFS很符合直觉。3. 最终代码逻辑很简单拿着字符串当前字符a[k2]去当前节点k1的son列表里找。找到了 - 递归下一层。找不到 -push_back一个新节点把ind传进去继续递归。#include bits/stdc.h #include vector using namespace std; struct node{ char data;//记录该结点是哪个字母 vectorint son;//存放该结点的儿子在树中的下标 }tre[50000];//要开大一点题目中说文件总长度不超过32K32k三万多字节所以开五万 int cnt;//节点个数 string a; //让tre[1]存放root int len; int ind1;//现在已经添加了ind个节点初始为1因为根节点为root不包含任何字母 void dfs(int k1,int k2){//现在遍历到树第k1个节点字符串遍历到第k2个位置 if(k2len) return; bool flag0; for(int i0;itre[k1].son.size();i){//遍历该节点所有孩子如果和字符串该位置的字母有对应就去找下一个对应 if(tre[tre[k1].son[i]].dataa[k2]){//如果对应上了就进入下一轮遍历 dfs(tre[k1].son[i],k21); flag1; break;//对应上了就不需要再找了退出此轮循环 } } if(flag0){//目前没有能匹配上的 tre[ind].dataa[k2];//把a[k2]创建一个新节点然后储存起来 tre[k1].son.push_back(ind);//把a[k2]节点存进父节点的孩子里就是拼接上去 dfs(ind,k21); } } int main(){ while(cina){ lena.size();//字符串长度 //建树 //长度不超过63个字母 即每次读进来的单词最多63个字符 dfs深度最多63层 dfs(1,0);//从树的第1个节点开始遍历从a字符串的a[0]开始遍历 } coutind; }4. 总结空间换算char是 1 字节题目给多少 K 就乘多少 1024数组宁大勿小。Vector 写法用vector代替定长数组写 Trie 是完全可行的特别适合不想算next[26]或者字符集不只是 26 个字母的情况。下标坑vector存的是下标取数据时记得套两层tre[tre[k1].son[i]]这里最容易晕。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

wordpress站点统计插件高并发系统架构

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个面向新手的交互式学习项目。要求:1) 用厨师做菜的生活化类比解释异步编程概念 2) 提供5个渐进式示例:从supplyAsync基础到thenCompose组合 3) 每个…

张小明 2025/12/31 1:03:57 网站建设

wordpress菜单背景半透明关键词优化收费标准

iPhone软件开发套件(SDK)入门指南 1. iPhone与App Store的魅力 iPhone的受欢迎程度超乎想象,App Store更是让众多爱好者为之着迷,不少人通过在App Store上售卖应用赚取了收益,甚至一些看似简单的应用,如让iPhone发出放屁声的应用,都能为开发者带来数十万美元的收入。如…

张小明 2025/12/31 1:03:23 网站建设

网站引导页是什么问题域名服务器如何申请

开源操作系统与计算机系统概述 1. 开源操作系统简介 随着网络技术的改进和网络实现代码的优化,基于Web的计算催生了新的设备类别,如负载均衡器,它能在一组相似的服务器之间分配网络连接。操作系统也从像Windows 95这样单纯的Web客户端,发展到Linux和Windows XP等既可以作…

张小明 2025/12/31 1:02:48 网站建设

视频网站搭建源码输入文字生成图片app

2025年国际足联年度颁奖典礼在卡塔尔多哈隆重举行。最大的悬念终于揭晓:巴黎圣日耳曼前锋奥斯曼登贝莱,力压一众巨星,成功当选2025年FIFA年度最佳男足球员(世界足球先生)!这意味着,他在同年包揽…

张小明 2025/12/31 1:02:14 网站建设

如何更改网站图标网站开发 语言 架构 数据库

你是否曾经在安装uBlock Origin后,发现某些功能无法使用,或者在不同浏览器中体验差异巨大?🤔 作为一款高效轻量级的宽频内容阻止程序,uBlock Origin(uBO)在不同浏览器平台上的表现确实存在显著区…

张小明 2025/12/31 1:01:40 网站建设

小学免费资源网站模板网站开发思维导图

PyTorch-CUDA-v2.6镜像部署LlamaIndex构建知识库问答系统 在大模型落地的浪潮中,一个常见但棘手的问题浮出水面:如何让通用语言模型理解企业私有数据?直接微调成本高昂、周期长,而单纯依赖模型“记忆”又容易产生幻觉。更现实的路…

张小明 2025/12/31 1:01:07 网站建设