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

C语言 | Leetcode C语言题解之第108题将有序数组转换为二叉搜索树

题目:

题解:

struct TreeNode* helper(int* nums, int left, int right) {if (left > right) {return NULL;}// 选择任意一个中间位置数字作为根节点int mid = (left + right + rand() % 2) / 2;struct TreeNode* root = (struct TreeNode*)malloc(sizeof(struct TreeNode));root->val = nums[mid];root->left = helper(nums, left, mid - 1);root->right = helper(nums, mid + 1, right);return root;
}struct TreeNode* sortedArrayToBST(int* nums, int numsSize) {return helper(nums, 0, numsSize - 1);
}
http://www.lryc.cn/news/351402.html

相关文章:

  • 关于在企业环境中中间人攻击(MITM)可行性研究的报告
  • GitHub Actions 自动部署 AWS Lambda
  • 【NOIP2013普及组复赛】题4:车站分级
  • el-table 表格拖拽 + 表头可修改 + 宽度自定义
  • Google发布的CAT3D,在1分钟内,能够从任意数量的真实或生成的图像创建3D场景。
  • 基于Matlab实现声纹识别系统
  • 【人工智能项目】小车障碍物识别与模型训练(完整工程资料源码)
  • #05【面试问题整理】嵌入式软件工程师
  • 同旺科技 FLUKE ADPT 隔离版发布 ---- 3
  • 探索 JavaScript 新增声明命令与解构赋值的魅力:从 ES5 迈向 ES6
  • HTML5 历史、地理位置处理、全屏处理
  • 打印机驱动程序安装后位置以及注册表中的位置
  • oracle数据库解析过高分析
  • Python解析网页-XPath
  • Vue 3入门指南
  • Arcpy安装和环境配置
  • Swagger2 和 Swagger3 的不同
  • 基于Tensorflow+Keras的卷积神经网络(CNN)人脸识别
  • electron学习记录
  • 【若依框架】学习
  • JavaScript运算符的二义性
  • 一次搞懂常见Banner尺寸,像素标准全解析!
  • 短视频矩阵管理系统:高效运营的智能解决方案
  • ubuntu执行apt-get upgrade时卡住,无法获得锁 /var/lib/dpkg/lock-frontend,无法获取 dpkg 前端锁
  • 和程序员de 相处之道
  • 图解Java数组的内存分布
  • 前端项目使用docker编译发版和gitlab-cicd发版方式
  • 18kw 机架式液冷负载的使用方法有哪些?
  • Linux liloconfig命令教程:创建和配置LILO引导加载器(附实例详解和注意事项)
  • 大厂程序员离职,开发一个盲盒小程序2万,一周开发完!