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

做淘宝客网站需要多大的数据库网站购买域名

做淘宝客网站需要多大的数据库,网站购买域名,魔都网站建设,如何做视频网站旗下账号【问题描述】[中等] 【解答思路】 其实就是深拷贝的一个实现#xff0c;深拷贝就是对于所有的指针成员#xff0c;不能仅仅是赋值#xff0c;还有重新分配空间。 深拷贝反应在本题中就是#xff0c;所有的结点需要重新new出来#xff0c;而不是直接赋值。 整体的思路依然…【问题描述】[中等] 【解答思路】 其实就是深拷贝的一个实现深拷贝就是对于所有的指针成员不能仅仅是赋值还有重新分配空间。 深拷贝反应在本题中就是所有的结点需要重新new出来而不是直接赋值。 整体的思路依然是dfs跑遍原图中每个结点然后根据原结点生成新结点。 要注意的地方就是因为图存在环所以要标记访问过的结点避免重复形成死循环 如果该结点已经被访问过则不再遍历该结点而是直接将指针值赋给自己邻接点数组----浅拷贝 如果该结点没有被访问过则继续dfs遍历该结点并将产生的新结点----深拷贝 1. DFS 时间复杂度O(N) 空间复杂度O(N) class Solution { // 哈希表对应关系节点1 -- 节点1的克隆private HashMap Node, Node visited new HashMap ();public Node cloneGraph(Node node) {if (node null) {return node;}// 如果该节点已经被访问过了则直接从哈希表中取出对应的克隆节点返回if (visited.containsKey(node)) {return visited.get(node);}// 克隆节点注意到为了深拷贝我们不会克隆它的邻居的列表Node cloneNode new Node(node.val, new ArrayList());// 哈希表存储visited.put(node, cloneNode);// 遍历该节点的邻居并更新克隆节点的邻居列表for (Node neighbor: node.neighbors) {cloneNode.neighbors.add(cloneGraph(neighbor));}return cloneNode;} } 2. BFS 时间复杂度O(N) 空间复杂度O(N) class Solution {public Node cloneGraph(Node node) {if (node null) {return node;}HashMapNode, Node visited new HashMap();// 将题目给定的节点添加到队列LinkedListNode queue new LinkedListNode ();queue.add(node);// 克隆第一个节点并存储到哈希表中visited.put(node, new Node(node.val, new ArrayList()));// 广度优先搜索while (!queue.isEmpty()) {// 取出队列的头节点Node n queue.remove();// 遍历该节点的邻居for (Node neighbor: n.neighbors) {if (!visited.containsKey(neighbor)) {// 如果没有被访问过就克隆并存储在哈希表中visited.put(neighbor, new Node(neighbor.val, new ArrayList()));// 将邻居节点加入队列中queue.add(neighbor);}// 更新当前节点的邻居列表// record.get(n)表示通过原节点得到它的克隆节点// 继续.neighbors.add(record.get(neighbor))表示往它的克隆节点中加入邻接节点// 为什么是add(record.get(neighbor))而不是add(neighbor)// 因为n是原图的节点record.get(neighbor)才是我们在上面if里克隆出的新节点visited.get(n).neighbors.add(visited.get(neighbor));}}return visited.get(node);} } 【总结】 1. 课本上总说deep copy和shallow copy似懂非懂的不觉得这东西有什么用。慢慢地发现deep copy背后隐藏的逻辑其实是一种对象图Object Graph的遍历行为——这东西广泛出现在各语言的垃圾回收、序列化机制里。内存里各个对象存储空间中放置的引用域/指针就好像有向图里一条边你沿着它去到达内存中的每个角落、去到当前对象所有的关联对象。题设里的neibours就像一道开胃菜它可以是其他collection、甚至object学会这个deep copy你也就学会了GC里的可达性分析、你也就学会了如何把RAM中的数据固化到硬盘里。 2.读题困难 对HashMap的读取操作不熟悉导致理解困难 转载链接https://leetcode-cn.com/problems/clone-graph/solution/ke-long-tu-by-leetcode-solution/
http://wiki.neutronadmin.com/news/112518/

相关文章:

  • 重慶网站建设网站开发最合适的搭配
  • 晋江网站制作网建教程
  • 网站上传后网站建设提升界面流畅程度
  • 注册完域名之后怎么找到网站工业和信息化局是干什么的
  • 网站建立者营销网络推广
  • 外包公司不给交社保怎么办榆林百度seo
  • 怎么做网站服务深圳做响应式网站公司
  • 制作视频模板的软件wordpress程序代码优化
  • 小程序制作平台价格上海网站关键词优化服务
  • 可以免费发广告的网站响应式 购物网站模板下载
  • 织梦 安装网站网站维护内容及费用
  • 如何做建材网站的线下推广邯郸网站设计价位
  • 宁夏建设职业技术学院成绩查询网站ph域名网站
  • 网站开发技术网站潍坊医院网站建设
  • 网站排版用什么软件wordpress如何做首页
  • 石排东莞网站建设归客手游代理平台
  • 移动网站建设案例唐山路北网站建设
  • 面包网站seo常州武进区建设局网站
  • 河南省国基建设集团有限公司网站北京网站建设优化
  • 做爰免费视频网站做网站建设的有哪些
  • 吉林分销网站建设wordpress for ace
  • 网站多个页面要加引导网站的困难
  • 网站建设手机端官网湖南建设厅网站
  • 福州哪里做网站在线设计平台怎么运营
  • 兰州网站建设公司哪家好环保h5微网站
  • dedecms图片网站模板久久建设工程有限公司
  • 网站建设应重视后期的服务和维护网络卡哪个公司的好
  • 爱站网关键词查询系统网站注册页面设计
  • 做设计学什么英语比较好的网站c2c网站建设策划书
  • 网站关键词怎么布局网站设计分工