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

男女直接做视频网站超市小程序怎么做

男女直接做视频网站,超市小程序怎么做,旅游投资公司网站建设,免费制作简历【题干】 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 【思路】 先说递归的,退出条件很明显,当剩…

【题干】

给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。

【思路】

  • 先说递归的,退出条件很明显,当剩余节点不足两个的时候退出递归,条件可以写为tail->next&&tail->next->next,短路运算也保证了不会进行nullptr的next运算;
  • 函数体内执行第一节点和第二节点的交换即可;
  • 交换后的第二节点连接更内层递归返回的节点;
  • 返回交换后的第一节点的指针,用于和前面部分连接。
  • 再说说迭代法,首先创造一个伪头部指向新的链表头节点,防止其丢失;
  • 然后就是常规的链表节点交换的操作,要注意许多防止指针丢失的细节,保留尾指针用于和后续剩余节点连接的细节,等等,具体就直接看代码吧;
  • 最后还是不要忘了把伪头部申请的内存释放哦!

【题解】

递归

class Solution {
public:ListNode* swapPairs(ListNode* head) {if (head == nullptr || head->next == nullptr) {return head;}ListNode* newHead = head->next;head->next = swapPairs(newHead->next);newHead->next = head;return newHead;}
};

迭代

class Solution {
public:ListNode* swapPairs(ListNode* head) {ListNode* dummyHead = new ListNode(0);dummyHead->next = head;ListNode* temp = dummyHead;while (temp->next != nullptr && temp->next->next != nullptr) {ListNode* node1 = temp->next;ListNode* node2 = temp->next->next;temp->next = node2;node1->next = node2->next;node2->next = node1;temp = node1;}ListNode* ans = dummyHead->next;delete dummyHead;return ans;}
};

http://www.yayakq.cn/news/850474/

相关文章:

  • 沈阳行业网站建设什么网站是php做的
  • 深圳福田网站制作公司遵义网站建设找工作
  • 网站开发知识体系建设公司网站需要多少钱
  • 青岛本地网站网站运营专员
  • 企业网站建设的现状服务器除了做网站还能做什么
  • 做网站哪个公司最资讯网站域名选购
  • 信阳新网站做seo优化公司申请网站备案
  • 泸州高端网站建设公司公司网站的ftp是什么
  • 广阳网站制作重庆业务外包网站建设
  • 驻马店公司做网站给我免费播放在线
  • 自己在网站做邮箱信息查询系统
  • 建设政务网站报告网站设计的优点
  • 护肤网站的功能设计广东移动网站
  • 正能量网站入口免费安全站长之家网站排行榜
  • 宁波制作手机网站wordpress中dw是什么
  • 网络做翻译的网站销售型网站
  • node框架做网站巴顿品牌设计
  • 网站cms下载提高企业网站的访问率
  • 代运营公司网站常见网站结构
  • 网站建设的主要观点关于网站建设的建议征集
  • 校园网站怎么建设如何下载wordpress插件之前的版本
  • 现在做一个网站最少要多少钱上海网站建设红旗
  • 做音乐网站没有版权做网站需要什么知识
  • 怎么自己设计网站南宁网站建设哪个好
  • 庐江县住房和城乡建设局网站网站项目申请
  • 成都高档网站建设通州富阳网站建设
  • 一个网站的首页设计ps厦门网站开发比较大的公司
  • 网站建设应具备哪些专业技能创意平面设计广告
  • 手机怎么搭建网站网线制作工具有哪些
  • 江苏网站推广网站快照出现两个