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

怎么做网站呀廊坊seo关键词排名

怎么做网站呀,廊坊seo关键词排名,做风帆网站需要多少钱,手机网站设计宽度[ 题目描述 ]: [ 思路 ]: 题目要钱创建一个新的和给出链表相同的链表,val 和 next 的复制比较简单,关键在于 random 的复制先复制一个 random 不变的新链表,然后通过他在旧链表中的位置,去锁定新链表中 n…

[ 题目描述 ]:
在这里插入图片描述
[ 思路 ]:

  • 题目要钱创建一个新的和给出链表相同的链表,val 和 next 的复制比较简单,关键在于 random 的复制
  • 先复制一个 random 不变的新链表,然后通过他在旧链表中的位置,去锁定新链表中 next 需要指向的位置
  • 运行如下
    在这里插入图片描述
struct Node* copyRandomList(struct Node* head) {if (!head) return NULL;struct Node* old_nodes[1000];struct Node* new_nodes[1000];int count = 0;struct Node* cur = head;struct Node* copy_head = NULL;struct Node* prev = NULL;while (cur) {struct Node* new_node = (struct Node*)malloc(sizeof(struct Node));new_node->val = cur->val;new_node->next = NULL;new_node->random = cur->random;if (prev)prev->next = new_node;elsecopy_head = new_node;old_nodes[count] = cur;new_nodes[count] = new_node;count++;prev = new_node;cur = cur->next;}for (int i = 0; i < count; i++) {if (new_nodes[i]->random) {for (int j = 0; j < count; j++) {if (old_nodes[j] == new_nodes[i]->random) {new_nodes[i]->random = new_nodes[j];break;}}} else {new_nodes[i]->random = NULL;}}return copy_head;
}

[ 官方题解 ]:

  • 方法一:回溯 + 哈希表,用哈希表记录每一个节点对应新节点的创建情况。遍历该链表的过程中,检查「当前节点的后继节点」和「当前节点的随机指针指向的节点」的创建情况。如果这两个节点中的任何一个节点的新节点没有被创建,我们都立刻递归地进行创建。当拷贝完成,回溯到当前层时,即可完成当前节点的指针赋值。注意一个节点可能被多个其他节点指向,因此可能递归地多次尝试拷贝某个节点,为了防止重复拷贝,需要首先检查当前节点是否被拷贝过,如果已经拷贝过,可以直接从哈希表中取出拷贝后的节点的指针并返回即可
struct HashTable {struct Node *key, *val;UT_hash_handle hh;
} * cachedNode;struct Node* deepCopy(struct Node* head) {if (head == NULL) {return NULL;}struct HashTable* tmp;HASH_FIND_PTR(cachedNode, &head, tmp);if (tmp == NULL) {struct Node* headNew = malloc(sizeof(struct Node));headNew->val = head->val;tmp = malloc(sizeof(struct HashTable));tmp->key = head, tmp->val = headNew;HASH_ADD_PTR(cachedNode, key, tmp);headNew->next = deepCopy(head->next);headNew->random = deepCopy(head->random);}return tmp->val;
}struct Node* copyRandomList(struct Node* head) {cachedNode = NULL;return deepCopy(head);
}
http://www.dtcms.com/wzjs/121649.html

相关文章:

  • 数据网站有哪些友情链接检查
  • 做网站怎样赚卖流量新网站 seo
  • 建设一个网站需要哪些费用潍坊网站排名提升
  • 网站建设用哪种语言软文推广策划方案
  • 东营网站营销策略的思路
  • wordpress站点全屏宿迁网站建设制作
  • 商城网站建设建议seo自然排名
  • 哪个网站有适合小学生做的题seo精华网站
  • 空间站建设seo搜索引擎优化工资薪酬
  • 黄岛网站建设公司首选哪个平台可以随便发广告
  • 企业网站建设怎么样做会计分录百度云网盘资源搜索引擎
  • 怎么做网站注册登入页面全网营销代理加盟
  • 重庆seo网站seo优化工具哪个好
  • 专门做自驾游攻略的网站it培训四个月骗局
  • 基于web的网站开发开题报告站长之家官网入口
  • 东营网站建设哪家专业企业如何网络推广
  • 温州网站排名团队百度指数功能模块
  • 自己做背景的网站拉新奖励的app排行
  • 新手学做网站 pdf杭州seo软件
  • 创新的沈阳网站建设营销网站建设推广
  • 营销型企业网站建设seo网站内部优化方案
  • 用dw个人网站怎么做优化网站排名软件
  • 网站开发 周期白帽seo是什么
  • wordpress 收藏功能自动app优化
  • 2017年网站建设公司重庆网站快速排名优化
  • 宜昌网站建设选择宜昌慧享互动福州百度推广排名
  • 昆明微网站制作整合营销传播的明显特征是
  • 建设网站号码是多少信息服务平台有哪些
  • 发改委关于信用网站建设aso优化推广
  • 网站开发什么语音最好cms建站系统