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

广州专业网站建设哪家好亚太建设科技信息研究院网站

广州专业网站建设哪家好,亚太建设科技信息研究院网站,网站推广优化怎么做最好,怎样给网站做备案文章目录 一、24. 两两交换链表中的节点1.题目简介2.解题思路3.代码4.运行结果 二、50. Pow(x, n)1.题目简介2.解题思路3.代码4.运行结果 三、2331. 计算布尔二叉树的值1.题目简介2.解题思路3.代码4.运行结果 总结 一、24. 两两交换链表中的节点 1.题目简介 24. 两两交换链表… 文章目录 一、24. 两两交换链表中的节点1.题目简介2.解题思路3.代码4.运行结果 二、50. Pow(x, n)1.题目简介2.解题思路3.代码4.运行结果 三、2331. 计算布尔二叉树的值1.题目简介2.解题思路3.代码4.运行结果 总结 一、24. 两两交换链表中的节点 1.题目简介 24. 两两交换链表中的节点 给你一个链表两两交换其中相邻的节点并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题即只能进行节点交换。 2.解题思路 递归思路 先处理第二个节点之后的节点再将前两个节点进行交换最后连接后面处理好的节点 迭代思路 双指针法(三指针法) 两个指针进行交换第三个指针进行遍历直到将链表遍历结束 3.代码 递归 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/class Solution { public:ListNode* swapPairs(ListNode* head) {if(head nullptr || head - next nullptr) return head;ListNode* t head - next - next;ListNode* next head - next;next - next head;head - next swapPairs(t);return next;} };迭代 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/class Solution { public:ListNode* swapPairs(ListNode* head) {if(head nullptr || head - next nullptr) return head;ListNode* prev head,* cur head - next,* next cur - next;ListNode* newhead cur;int flag 1;//假设链表的节点个数为偶数while(next){cur - next prev;if(next - next)//链表的节点个数是偶数个或者未到达链表结尾{prev - next next - next;cur next - next;prev next;next cur - next;}else//如果链表的结点个数是奇数个{flag 0;prev - next next;next next - next;}}if(flag){cur - next prev;prev - next next;}return newhead;} };4.运行结果 递归 迭代 二、50. Pow(x, n) 1.题目简介 50. Pow(x, n) 2.解题思路 思路先计算x的n / 2次再相乘(注意n的正负性和奇偶性) 因为可能会出现n是INT_MIN的情况因为-INT_MIN会导致溢出所以我们将n的类型改为long long。 3.代码 class Solution { public:double myPow(double x, int n) {return n 0 ? 1 / func(x, -(long long)n) : func(x, n);}double func(double x, long long n){if(n 0) return 1.0;double t myPow(x, n / 2);double ret t * t;if(n % 2) ret * x;return ret;} };4.运行结果 三、2331. 计算布尔二叉树的值 1.题目简介 2331. 计算布尔二叉树的值 2.解题思路 先计算孩子节点再根据孩子节点的布尔值和自身所表示的运算符来计算自身的布尔值 3.代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/class Solution { public:bool evaluateTree(TreeNode* root) {if(root - val 0) return false;if(root - val 1) return true;if(root - val 2) return evaluateTree(root - left) || evaluateTree(root - right);return evaluateTree(root - left) evaluateTree(root - right);} };4.运行结果 总结 今天是递归、搜索与回溯算法练习的第2天 坚持就是胜利继续加油。 如果本篇文章对你有所启发的话希望可以多多支持作者谢谢大家
http://www.zqtcl.cn/news/749062/

相关文章:

  • 北京天通苑 做网站西安百度网站建设
  • 辽阳建设网站学校 网站 建设 目的
  • 建设电影网站赚钱公司简介模板免费word简易
  • 响应式网站设计的主页自己做装修效果图app软件
  • 做网站最简单的方法做网站开发挣钱吗
  • 网站建设基础入门国内免费的ip地址
  • wordpress 付费剧集网站坐什么网站能用到html5
  • 孝感房产网站建设wordpress E405
  • 做窗帘网站图片大全WordPress一键安装安全
  • 怎样查询网站的备案号广西住房和城乡建设厅网站证件
  • 网站区域名怎么注册网站群建设 中标
  • 官方网站 建设情况汇报网页设计开发培训
  • 门户网站的细分模式有房价暴跌开始了
  • 公司备案查询网站备案江苏省网站备案系统
  • 专业网站制作公司采用哪些技术制作网站?seo求职
  • 服装网页设计网站有个做名片什么的网站
  • 购买网站平台如何做分录泰安网站开发公司
  • 音乐介绍网站怎么做的光辉网络 石家庄网站建设
  • 沈阳网站建设搭建天元建设集团有限公司开票信息
  • 昆明网站建设公司哪家好预约网站模板
  • 自己怎么申请网站空间浙江省建设科技推广中心网站
  • 网站后台管理系统怎么添加框wordpress上传之后
  • 网站编辑属于什么行业义乌做网站哪家好
  • 沂水网站开发移动知识库管理系统
  • 成都有哪些网站建设的公司河南网站建设优化推广
  • 小说投稿赚钱的网站网站后台管理系统多少钱
  • 中国建设银行国际互联网网站网站是用什么做的
  • 做建设网站的活的兼职网络推广专员的岗位职责是
  • 韩国 网站设计保定网站开发公司
  • 发外链的网站都要企业注册网站建设的基本概念