Leetcode—108.将有序数组转换为二叉搜索树【简单】

news/2024/6/17 18:23:11 标签: leetcode, 算法, 深度优先, c++, 经验分享

2023每日刷题(五十八)

Leetcode—108.将有序数组转换为二叉搜索树

在这里插入图片描述

实现代码

/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     struct TreeNode *left;
 *     struct TreeNode *right;
 * };
 */
struct TreeNode* dfs(int *arr, int left, int right) {
    if(left > right) {
        return NULL;
    }
    int mid = left + (right - left) / 2;
    struct TreeNode* root = (struct TreeNode*)malloc(sizeof(struct TreeNode));
    root->val = arr[mid];
    root->left = dfs(arr, left, mid - 1);
    root->right = dfs(arr, mid + 1, right);
    return root;
}

struct TreeNode* sortedArrayToBST(int* nums, int numsSize) {
    return dfs(nums, 0, numsSize - 1);
}

运行结果

在这里插入图片描述
之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!


http://www.niftyadmin.cn/n/5262070.html

相关文章

大一C语言作业 12.14

1.A A:将pa指向的元素赋值给x,即x a[0] B:将a数组第二个元素的值赋给x,即x a[1] C:将pa指向的下一个元素的值赋给x,即x a[1] D:将a数组第二个元素的值赋给x,即x a[1] 2. 6 2 3 …

Guarded Suspension(担保挂起)设计模式

当线程访问某个对象时,发现条件不满足,暂时挂起等待条件满足时再次访问。Guarded Suspension模式是一个非常基础的模式,主要关注(临界值)不满足时将操作的线程正确挂起,以防止出现数据不一致或者操作超过临…

内网服务器部署maven私服简记

前言 很多企业希望创建自己的maven私服,但服务器无法和外网连通,所以这里介绍一套完整的内网部署nexus的解决方案。实现的方式也很简单,将下载好的nexus安装和项目所需的依赖仓库都上传到服务i去上去,通过脚本的方式实现批量导入…

重“芯”升级 小匠物联推出更具性价比的软硬一体离线语音解决方案

万物智能化的时代,设备智能化程度不断进阶。随着物联网和AI技术大爆发,智能终端对智能语音的需求日益增加,智能家居设备语音交互已经成为了人们家常便饭的操作,智能语音已成为众多智能终端厂商争夺的千亿市场。 一直以来由于语音…

Java 线程运行方法和原理

线程运行 原理 栈与栈帧: Java 虚拟机栈会为每个启动的线程分配一块栈内存,其中存储着栈帧(Frame) 每个栈由多个栈帧组成,栈帧对应调用方法(函数)所占用的内存每个栈只有一个活动栈&#xf…

玩转大数据16:大数据存储与文件格式优化

随着大数据时代的到来,存储和处理海量数据成为了一个重要的挑战。在大数据存储中,选择合适的文件格式对数据的压缩率、读写性能和扩展性起着关键作用。本文将介绍大数据存储的挑战,探讨常见的文件格式,并深入讨论文件格式优化的策…

转换 pytorch 格式模型为 caffe格式模型 pth2caffemodel

基于 GitHub xxradon/PytorchToCaffe 源码,修改 example\resnet_pytorch_2_caffe.py 如下 import os import sys sys.path.insert(0, .)import torch from torch.autograd import Variable from torchvision.models import resnet import pytorch_to_caffe"&q…

arm 交叉编译器版本下载

网址:https://releases.linaro.org/components/toolchain/binaries/ 根据板子架构选择正确的编译器 根据你主机架构选择对应的版本(就是你的开发电脑架构)