当前位置: 首页 > news >正文

做网站做本地服务器wordpress查询收录

做网站做本地服务器,wordpress查询收录,免费psd模板素材,广州seo快速排名原题链接 1483. 树节点的第 K 个祖先 - 力扣#xff08;LeetCode#xff09; 题目解析 要求编写一个TreeAncestor类#xff0c;需要为其写两个函数。该类是一个无规律的多叉树#xff0c;多叉树的父节点一定是0号节点 1. TreeAncestor(int n, vectorintLeetCode 题目解析 要求编写一个TreeAncestor类需要为其写两个函数。该类是一个无规律的多叉树多叉树的父节点一定是0号节点 1.        TreeAncestor(int n, vectorint parent) n为parent的长度也为多叉树的节点个数parent中存的是每个节点的父节点的编号例如parent[3] 1代表3号节点的父节点是1号节点 2.         int getKthAncestor(int node, int k) node为节点序号k是一个计数器该函数要求返回node节点的第k辈祖先节点的序号如果不存在返回-1 1 k n 5 * 10^4parent[0] -1 表示编号为 0 的节点是根节点。对于所有的 0  i n 0 parent[i] n 总成立0 node n至多调用 5 * 10^4 次getKthAncestor 解题 两种不合题意的解法 直接暴力求解: 超时 class TreeAncestor { public:TreeAncestor(int n, vectorint parent) {tmp {parent.begin(),parent.end()};}int getKthAncestor(int node, int k) {while(k--){if(node 0)return -1;node tmp[node];}return node;}vectorint tmp; }; 构造函数时间复杂度o(n)空间复杂度o(n) get函数时间复杂度o(k)  空间复杂度o(1) 假设调用a次get:总时间复杂度o(k*an)空间复杂度o(n) 优化暴力 超空间 在暴力解法中每次调用get都会从node开始一直向前算这些计算很可能在之前的遍历中都算过了。如果我们在执行循环之前把所有的情况都算出来之后调用get时就可以直接得到。 class TreeAncestor { public:TreeAncestor(int n, vectorint parent) {tmp { parent.begin(),parent.end() };r.resize(tmp.size());for (int i 1; i tmp.size(); i){for (int j i; j 0; j tmp[j]){r[i].push_back(j);}}}int getKthAncestor(int node, int k) {if (k r[node].size())return -1;elsereturn r[node][k];}vectorint tmp;vectorvectorint r; }; 构造函数时间复杂度o(n*n)空间复杂度o(n*n) get函数时间复杂度o(1)  空间复杂度o(1) 假设调用a次get:总时间复杂度o(n*n)空间复杂度o(n*n) 倍增记录法 既然优化暴力法会超空间限制想办法只取一部分的数据进行记录即可。 class TreeAncestor { public:const int num 16;vectorvectorinta;TreeAncestor(int n, vectorint parent) {a.resize(n, vectorint(num, -1));for (int i 0; i n; i){a[i][1] parent[i];}for (int j 2; j num; j){for (int i 0; i n; i){if (a[i][j-1] ! -1)a[i][j] a[a[i][j - 1]][j - 1];}}}int getKthAncestor(int node, int k) {int tmp 0;while (k ! 0){if (node -1)return -1;int a1 1,a20;while (a1 k)a1 * 2,a2;k - a1 / 2;node a[node][ a2 ];}return node;} }; 构造函数时间复杂度o(n*log(n))空间复杂度o(n*log(n)) get函数时间复杂度o(log(k))  空间复杂度o(1) 假设调用a次get:总时间复杂度o(n*log(n)a*log(k))空间复杂度o(n*log(n)) 感谢观看
http://www.zqtcl.cn/news/380504/

相关文章:

  • 福州网站建设公司哪个网站可以做前端项目
  • 十二冶金建设集团有限公司网站wordpress安装在哪里
  • 怎么做网站源码wordpress的rss
  • wordpress能不能做企业网站软件技术和计算机网络技术哪个好
  • 甘肃省住房和城乡建设部网站首页ip怎么做网站
  • 怎么开一家网站开发公司百度推广一年大概需要多少钱
  • 小破站下载h5企业模板网站
  • 服务器怎么设置ip做网站凌云seo博客
  • 莱芜四大金刚是谁啊镇江网站优化推广
  • 上海门户网站开发企业号码查询系统
  • 西安做网站设计的公司golang 网站开发 教程
  • 做网站哪些公司专业做app软件开发公司
  • 蒙特网站建设湖北省建设厅网站上岗证查询
  • 宁波网站建设 联系哪家电子商务网站建设过程范文
  • 南宁商城网站建设网站建设的需求文档
  • dedeampz 部署wordpress 网站访问慢如何评价网站是否做的好处
  • 怎样建设个人影视网站设计学专业
  • 没有公司 接单做网站网站建设加盟合作
  • 如何将域名和网站绑定做网站找投资人
  • 网站开发 平台WordPress首页可见
  • 沧州做网站费用打开上海发布
  • 重庆潼南网站建设公司电话网站能调用一些字体
  • 摄影网站设计素材做彩票网站电话多少
  • 开网站公司企业管理网课
  • 相城高端网站建设施工建设集团网站
  • .电子商务网站的开发原则包括网络服务示范区创建情况
  • 网站如何做权重php做网站登陆验证
  • 昆山制造网站的地方网站建设 有聊天工具的吗
  • 自己做网站制作需要多少钱如何免费注册网站域名
  • 如何做网站美化怎样写网站文案