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

如何找出所有不重复的三位偶数:详细解法与思考过程

问题描述

给定一个包含数字(0-9)的数组digits,其中可能包含重复元素。我们需要找出所有满足以下条件且互不相同的整数:

  1. 该整数由digits中的三个元素按任意顺序依次连接组成

  2. 该整数不含前导零(即必须是100-999之间的数)

  3. 该整数是一个偶数

例如,给定digits = [1, 2, 3],满足条件的数有132和312。

初步思考

首先,我们需要明确几个关键点:

  1. 三位数的构成:每个数字必须由三个数字组成,第一位不能是0

  2. 偶数的判断:一个数是偶数当且仅当它的最后一位是偶数(0,2,4,6,8)

  3. 不重复性:最终结果中不能有重复的数字

暴力解法

最直观的方法是尝试所有可能的三位数组合,然后筛选出符合条件的数。

算法步骤

  1. 使用三重循环遍历所有可能的三位数组合

  2. 确保三个数字来自不同的位置(可以值相同但位置不同)

  3. 检查组成的数是否是有效的三位数偶数

  4. 使用集合来存储结果,自动去重

  5. 最后将结果排序输出

Java实现

java

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;class Solution {public int[] findEvenNumbers(int[] digits) {Set<Integer> result = new HashSet<>();int n = digits.length;for (int i = 0; i < n; i++) {for (int j = 0; j < n; j++) {if (j == i) continue;for (int k = 0; k < n; k++) {if (k == i || k == j) continue;int num = digits[i] * 100 + digits[j] * 10 + digits[k];if (num >= 100 && num % 2 == 0) {result.add(num);}}}}List<Integer> sortedList = new ArrayList<>(result);Collections.sort(sortedList);int[] answer = new int[sortedList.size()];for (int i = 0; i < sortedList.size(); i++) {answer[i] = sortedList.get(i);}return answer;}
}

复杂度分析

  • 时间复杂度:O(n³),因为有三重循环

  • 空间复杂度:O(m),其中m是结果的数量,最坏情况下是O(450)(因为三位偶数有450个)

优化思路

虽然暴力解法可以解决问题,但当输入规模较大时效率不高。我们可以考虑以下优化:

  1. 预处理偶数位:先找出所有可以放在个位的偶数数字

  2. 避免重复计算:对于相同的数字组合,不需要重复计算

  3. 提前终止:在某些条件下可以提前终止循环

优化后的算法

  1. 统计每个数字的出现频率

  2. 遍历所有可能的百位数(1-9)

  3. 遍历所有可能的十位数(0-9)

  4. 遍历所有可能的个位偶数(0,2,4,6,8)

  5. 检查这三个数字是否都在原始数组中可用(考虑重复情况)

优化后的Java实现

java

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;class Solution {public int[] findEvenNumbers(int[] digits) {int[] freq = new int[10];for (int d : digits) {freq[d]++;}List<Integer> result = new ArrayList<>();for (int h = 1; h <= 9; h++) {if (freq[h] == 0) continue;freq[h]--;for (int t = 0; t <= 9; t++) {if (freq[t] == 0) continue;freq[t]--;for (int u = 0; u <= 8; u += 2) {if (freq[u] == 0) continue;result.add(h * 100 + t * 10 + u);}freq[t]++;}freq[h]++;}Collections.sort(result);return result.stream().mapToInt(i -> i).toArray();}
}

复杂度分析

  • 时间复杂度:O(9×10×5) = O(450),因为固定了三位数的范围

  • 空间复杂度:O(m),其中m是结果的数量

测试案例

让我们用几个测试案例来验证我们的解法:

  1. 示例1

    • 输入:[1,2,3]

    • 输出:[132, 312]

    • 解释:可能的组合有123,132,213,231,312,321,其中132和312是偶数

  2. 示例2

    • 输入:[2,2,8,8]

    • 输出:[228,282,288,822,828,882]

    • 解释:注意重复数字的处理

  3. 示例3

    • 输入:[0,0,0]

    • 输出:[]

    • 解释:无法组成不含前导零的三位数

常见错误与陷阱

在解决这个问题时,容易犯以下错误:

  1. 忽略前导零:忘记检查百位数不能为0

  2. 重复处理不当:没有正确处理输入中的重复数字

  3. 偶数判断错误:只检查了数字是否为偶数,而没有确保个位是偶数

  4. 效率问题:使用暴力解法时没有考虑优化,导致大输入时超时

总结

通过这个问题,我们学习了:

  1. 如何系统地分析问题需求

  2. 暴力解法的实现与优化思路

  3. 处理数字组合时的注意事项

  4. Java中集合和数组的转换技巧

对于类似的问题,可以遵循以下解决步骤:

  1. 明确问题要求和约束条件

  2. 设计基础解法

  3. 分析优化空间

  4. 实现并测试

  5. 考虑边界情况

希望这篇文章能帮助你更好地理解这类组合问题的解决方法!

相关文章:

如何找出所有不重复的三位偶数:详细解法与思考过程

问题描述 给定一个包含数字&#xff08;0-9&#xff09;的数组digits&#xff0c;其中可能包含重复元素。我们需要找出所有满足以下条件且互不相同的整数&#xff1a; 该整数由digits中的三个元素按任意顺序依次连接组成 该整数不含前导零&#xff08;即必须是100-999之间的数…...

每日Prompt:超现实交互场景

提示词 一幅铅笔素描画&#xff0c;描绘了 一个女孩 与 一朵玫瑰 互动的场景&#xff0c;其中 一朵玫瑰 以逼真的全彩风格呈现&#xff0c;与 一个女孩及背景的手绘素描风格形成超现实的对比。...

基于大模型预测的多发性硬化综合诊疗方案研究报告大纲

目录 一、引言二、文献综述三、大模型预测系统构建四、术前预测与手术方案制定五、术中监测与决策支持六、术后护理与并发症预测七、麻醉方案智能优化八、统计分析与技术验证九、实验验证与证据支持十、健康教育与指导系统十一、结论与展望一、引言 (一)研究背景与意义 多发…...

五、Hive表类型、分区及数据加载

在 Hive 中高效构建、管理和查询数据仓库&#xff0c;核心在于精准运用表类型&#xff08;内部/外部&#xff09;与分区策略&#xff08;静态/动态/多重&#xff09;。这不仅决定数据的生命周期归属&#xff0c;更是优化海量数据查询性能的关键手段。 一、表的身份权责&#x…...

在选择合适的实验室铁地板和铸铁试验平板,帮分析​

铸铁测试底板是一种采用铸铁材料经过加工制成的基准测量工具&#xff0c;主要用于工业检测、机械加工和实验室等高精度要求的场合。其核心功能是为各类测量、检验、装配工作提供稳定的水平基准面&#xff0c;确保测量数据的准确性和一致性。 一、铸铁测试底板的基本特性 1.材质…...

阿里云人工智能大模型通义千问Qwen3开发部署

本文主要描述阿里云人工智能大模型开源社区ModelScope提供的通义千问Qwen3开发部署。 与阿里云一起 轻松实现数智化 让算力成为公共服务&#xff1a;用大规模的通用计算&#xff0c;帮助客户做从前不能做的事情&#xff0c;做从前做不到的规模。让数据成为生产资料&#xff1a;…...

网络基础知识梳理和Muduo库使用

文章目录 网络基础知识梳理和Muduo库使用1.知识储备2.阻塞、非阻塞、同步、异步我的总结 3.Unix/Linux上的五种IO模型0.铺垫1.阻塞IO&#xff08;blocking&#xff09;2.非阻塞IO&#xff08;non-blocking&#xff09;3.IO复用&#xff08;IO multiplexing&#xff09;4.信号驱…...

IDEA 插件推荐:提升编程效率

通过安装和使用合适的插件&#xff0c;可以大幅提升开发效率和代码质量。本文将从多个维度推荐实用的 IDEA 插件&#xff0c;并提供安装与使用指南。 一、代码辅助类插件 1. Key Promoter X —— 快捷键学习利器 功能介绍&#xff1a;当你使用鼠标点击某个功能时&#xff0c;…...

001大模型-认识大模型以及大模型应用场景

大模型是一种基于海量数据训练的人工智能系统&#xff0c;具备强大的语言理解和生成能力。其工作原理是通过深度学习算法&#xff0c;分析大量文本数据&#xff0c;学习语言模式和知识&#xff0c;从而能够处理复杂的任务。大模型的应用广泛&#xff0c;包括自然语言处理、机器…...

Qt进阶开发:QTcpServer的的详解

文章目录 一、QTcpServer 简介二、常用成员函数的使用三、信号函数的使用四、虚函数的使用五、连接多客户端-服务端示例一、QTcpServer 简介 QTcpServer 是 Qt 网络模块中的一个核心类,用于实现 基于 TCP 协议的服务端(Server),它负责监听端口、接收客户端连接请求,并通过…...

Spark,集群搭建之Yarn模式

以下是Spark基于Yarn模式的集群搭建关键步骤&#xff08;需先部署Hadoop Yarn集群&#xff09;&#xff1a; 一、环境准备 1. 确认Hadoop已运行 - 确保HDFS、Yarn ResourceManager和NodeManager正常启动。 2. 安装Java - 所有节点安装JDK 8&#xff0c;配置 JAVA_HOME 环境变量…...

fiddler 配置ios手机代理调试

平时做移动移动端开必的时候经常需要抓包手机&#xff0c;用于接口请求跟踪&#xff0c;但iOS的抓包经常性的配不成功&#xff0c;经过踩过不少坑后终于知道了整个配置流程&#xff0c;此文记录Fiddler抓包iOS手机的配置流程。 Step 1&#xff1a;Fiddler配置 通过工具栏Tool…...

iOS即时通信的技术要点

iOS即时通信开发的关键技术要点总结&#xff1a; 一、通讯协议选择 Socket通信 基础实现&#xff1a;使用原生BSD Socket或CFNetwork框架&#xff08;复杂&#xff09;&#xff0c;推荐第三方库如CocoaAsyncSocket&#xff08;封装GCDAsyncSocket&#xff09;&#xff0c;简化T…...

Windows 安装 Milvus

说明 操作系统&#xff1a;Window 中间件&#xff1a;docker desktop Milvus&#xff1a;Milvus Standalone&#xff08;单机版&#xff09; 安装 docker desktop 参考&#xff1a;Window、CentOs、Ubuntu 安装 docker-CSDN博客 安装 Milvus 参考链接&#xff1a;Run Mil…...

5G网络:能源管理的“智能电网“革命,Python如何成为关键推手?

5G网络&#xff1a;能源管理的"智能电网"革命&#xff0c;Python如何成为关键推手&#xff1f; 大家好&#xff0c;我是Echo_Wish。今天咱们聊一个既硬核又接地气的话题——5G网络如何用Python代码重构全球能源管理。 不知道你们有没有注意过&#xff1a; • 家里装…...

解决WSL、Ubuntu的.ico图标不正确显示缩略图

解决WSL、Ubuntu的.ico图标不正确显示缩略图 问题描述 Win10系统中由于更新了某些软件&#xff0c;篡改了默认的图像显示软件&#xff0c;导致WSL等软件未能成功显示图标&#xff0c;表现如下&#xff1a; 解决方法 将ico文件的默认打开方式更改为“画图”&#xff0c;如下…...

Redis+Caffeine构造多级缓存

一、背景 项目中对性能要求极高&#xff0c;因此使用多级缓存&#xff0c;最终方案决定是RedisCaffeine。其中Redis作为二级缓存&#xff0c;Caffeine作为一级本地缓存。 二、Caffeine简单介绍 Caffeine是一款基于Java 8的高性能、灵活的本地缓存库。它提供了近乎最佳的命中…...

Redis+Caffeine构建高性能二级缓存

大家好&#xff0c;我是摘星。今天为大家带来的是RedisCaffeine构建高性能二级缓存&#xff0c;废话不多说直接开始~ 目录 二级缓存架构的技术背景 1. 基础缓存架构 2. 架构演进动因 3. 二级缓存解决方案 为什么选择本地缓存&#xff1f; 1. 极速访问 2. 减少网络IO 3…...

【机器人】复现 UniGoal 具身导航 | 通用零样本目标导航 CVPR 2025

UniGoal的提出了一个通用的零样本目标导航框架&#xff0c;能够统一处理多种类型的导航任务。 支持 对象类别导航、实例图像目标导航和文本目标导航&#xff0c;而无需针对特定任务进行训练或微调。 本文分享UniGoal复现和模型推理的过程&#xff5e; 查找沙发&#xff0c;模…...

LeetCode 373 查找和最小的 K 对数字题解

LeetCode 373 查找和最小的 K 对数字题解 题目描述 给定两个以升序排列的整数数组 nums1 和 nums2&#xff0c;以及一个整数 k。定义一对值 (u,v)&#xff0c;其中第一个元素来自 nums1&#xff0c;第二个元素来自 nums2。请找到和最小的 k 个数对。 解题思路 最小堆优化法…...

搜索二维矩阵 II 算法讲解

搜索二维矩阵 II 算法讲解 一、问题描述 给定一个 m x n 的二维矩阵 matrix ,需要在其中搜索一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。每列的元素从上到下升序排列。要求编写一个高效的算法来完成搜索任务。 二、解题思路 方法一:暴力枚举 …...

三层交换机,单臂路由(用DHCP自动配置ip+互通+ACL

三层交换机&#xff0c;单臂路由&#xff08;用DHCP自动配置ip互通ACL 任务 1.用DHCP自动配置ip 2.三层交换机SVI、 3.单臂路由 4.互通 5.ACL三层交换机SVI 交换机 Switch>en Switch#conf t Enter configuration commands, one per line. End with CNTL/Z. Switch(conf…...

OpenCV CUDA 模块中在 GPU 上对图像或矩阵进行 翻转(镜像)操作的一个函数 flip()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 cv::cuda::flip 是 OpenCV 的 CUDA 模块中的一个函数&#xff0c;用于在 GPU 上对图像或矩阵进行 翻转&#xff08;镜像&#xff09;操作。它类似…...

链表面试题7之相交链表

来了来了&#xff0c;这道题才是值得我们奇思妙想的题,链接在下面。 160. 相交链表 - 力扣&#xff08;LeetCode&#xff09; 看完题目一脸懵吗&#xff0c;没关系&#xff0c;我们还得看示例 还是一脸懵怎么办&#xff1f;&#xff1f; 两个链表相交的方式有几种&#xff1f;…...

Excel-to-JSON插件专业版功能详解:让Excel数据转换更灵活

前言 在数据处理和系统集成过程中&#xff0c;Excel和JSON格式的转换是一个常见需求。Excel-to-JSON插件提供了一套强大的专业版功能&#xff0c;能够满足各种复杂的数据转换场景。本文将详细介绍这些专业版功能的应用场景和使用方法。 订阅说明 在介绍具体功能之前&#xf…...

【C++】”如虎添翼“:模板初阶

泛型编程&#xff1a; C中一种使用模板来实现代码重用和类型安全的编程范式。它允许程序员编写与数据类型无关的代码&#xff0c;从而可以用相同的代码逻辑处理不同的数据类型。模板是泛型编程的基础 模板分为两类&#xff1a; 函数模板&#xff1a;代表了一个函数家族&#x…...

【K8S学习之探针】详细了解就绪探针 readinessProbe 和存活探针 livenessProbe 的配置

参考 Pod健康检查 Kubernetes 学习笔记Kubernetes 就绪探针&#xff08;Readiness Probe&#xff09; - 人艰不拆_zmc - 博客园Kubernetes存活探针&#xff08;Liveness Probe&#xff09; - 人艰不拆_zmc - 博客园 Pod健康检查 Pod的健康状态由两类探针来检查&#xff1a;…...

WSL 安装 Debian 12 后,Linux 如何安装 redis ?

在 WSL 的 Debian 12 上安装 Redis 的步骤如下&#xff1a; 1. 更新系统包列表 sudo apt update && sudo apt upgrade -y2. 安装 Redis sudo apt install redis-server -y3. 启动 Redis 服务 sudo systemctl start redis4. 设置开机自启 sudo systemctl enable red…...

python打卡day22

复习日 仔细回顾一下之前21天的内容&#xff0c;没跟上进度的同学补一下进度。 作业&#xff1a; 自行学习参考如何使用kaggle平台&#xff0c;写下使用注意点&#xff0c;并对下述比赛提交代码 kaggle泰坦里克号人员生还预测 就是很简单很草率地走了一遍机器学习的经典流程&am…...

国产化Excel处理控件Spire.XLS系列教程:如何通过 C# 删除 Excel 工作表中的筛选器

在 Excel 文件中&#xff0c;筛选器&#xff08;Filter&#xff09;是一个常用的数据处理工具&#xff0c;可以帮助用户快速按条件筛选数据行。但在数据整理完成、导出、共享或打印之前&#xff0c;往往需要 删除 Excel 工作表中的筛选器&#xff0c;移除列标题中的下拉筛选按钮…...

使用 DMM 测试 TDR

TDR&#xff08;时域反射计&#xff09;可能是实验室中上升时间最快的仪器&#xff0c;但您可以使用直流欧姆表测试其准确性。 TDR 测量什么 在所有高速通道中&#xff0c;反射都很糟糕。我们尝试设计一个通道来减少反射&#xff0c;这些反射都会导致符号间干扰 &#xff08;…...

基于卡尔曼滤波的传感器融合技术的多传感器融合技术(附战场环境模拟可视化代码及应用说明)

基于卡尔曼滤波的传感器融合技术的多传感器融合技术(附战场环境模拟可视化代码及应用说明) 1 目标运动状态空间建模1.1 状态向量定义1.2 状态转移方程1.3 观测模型构建2 卡尔曼滤波核心算法实现2.1 初始化2.2 预测步骤2.3 更新步骤3 多传感器融合仿真验证3.1 传感器模型模拟3…...

M8040A/M8199助力数据中心收发信机测试

随着数字通信和大数据的不断发展&#xff0c;误码率测试变得越来越重要。高性能误码率测试仪作为一种关键的测试设备&#xff0c;可以对数字信号进行高速、高精度的误码率测试&#xff0c;广泛应用于通信、数据中心、半导体等行业。 M8040A误码仪系统当前不仅在上游IP和顶层芯…...

傲云源墅:以五傲价值重构北京主城别墅格局

在高端别墅市场中&#xff0c;产品自身的品质与特色是吸引客户的关键。北京傲云源墅以其独特的 “五傲” 价值&#xff0c;重新定义了北京主城别墅的标准。 首先是低密之傲&#xff0c;傲云源墅的容积率低至约 0.9&#xff0c;与市场上 1.0 以上容积率的别墅相比&#xff0c;为…...

精益数据分析(56/126):创业阶段的划分与精益数据分析实践

精益数据分析&#xff08;56/126&#xff09;&#xff1a;创业阶段的划分与精益数据分析实践 在创业和数据分析的探索之旅中&#xff0c;理解创业阶段的划分以及与之对应的精益数据分析方法至关重要。今天&#xff0c;依旧怀揣着与大家共同进步的心态&#xff0c;深入研读《精…...

[redis进阶六]详解redis作为缓存分布式锁

目录 一 什么是缓存 缓存总结板书: 二 使⽤Redis作为缓存 三 缓存的更新策略 1) 定期⽣成 2) 实时⽣成 四 面试重点:缓存预热,缓存穿透,缓存雪崩 和缓存击穿 1)缓存预热 2)缓存穿透 3)缓存雪崩 4)缓存击穿 五 分布式锁 板书: 1)什么是分布式锁 2)分布式锁的基…...

【RabbitMQ】应用问题、仲裁队列(Raft算法)和HAProxy负载均衡

&#x1f525;个人主页&#xff1a; 中草药 &#x1f525;专栏&#xff1a;【中间件】企业级中间件剖析 一、幂等性保障 什么是幂等性&#xff1f; 幂等性是指对一个系统进行重复调用&#xff08;相同参数&#xff09;&#xff0c;无论同一操作执行多少次&#xff0c;这些请求…...

国产密码新时代!华测国密 SSL 证书解锁安全新高度

在数字安全被提升到国家战略高度的今天&#xff0c;国产密码算法成为筑牢网络安全防线的关键力量。华测国密SSL证书凭借其强大性能与贴心服务&#xff0c;为企业网络安全保驾护航&#xff0c;成为符合国家安全要求的不二之选&#xff01;​ 智能兼容&#xff0c;告别浏览器适配…...

【Linux篇章】Linux 进程信号2:解锁系统高效运作的 “隐藏指令”,开启性能飞跃新征程(精讲捕捉信号及OS运行机制)

本篇文章将以一个小白视角&#xff0c;通俗易懂带你了解信号在产生&#xff0c;保存之后如何进行捕捉&#xff1b;以及在信号这个话题中&#xff1b;OS扮演的角色及背后是如何进行操作的&#xff1b;如何理解用户态内核态&#xff1b;还有一些可以引出的其他知识点&#xff1b;…...

C# 基础 try-catch代码块

​ try-catch代码块是C#中用于异常处理的核心机制。异常是在程序执行过程中可能出现的错误&#xff0c;而try-catch代码块允许您在执行代码时捕获并处理这些异常。 一、基础结构 try {//可能抛出异常的代码 } catch (ArgumentException ex) {//处理特定异常 } catch (Excepti…...

为什么 mac os .bashrc 没有自动加载?

原因说明 在macOS中&#xff0c;默认情况下&#xff0c;终端使用的是Bash或Zsh作为shell。对于较新版本的macOS&#xff08;从Catalina开始&#xff09;&#xff0c;默认的shell已经切换为Zsh。因此&#xff0c;如果你正在使用Zsh&#xff0c;.bashrc文件不会自动生效&#xf…...

【HarmonyOS Next之旅】DevEco Studio使用指南(二十二)

目录 1 -> 开发静态共享包 1.1 -> 创建库模块 1.2 -> 编译库模块 2 -> 开发动态共享包 2.1 -> 使用约束 2.2 -> 开发动态共享包 2.2.1 -> 创建HSP模块 2.2.2 -> 编译HSP模块 3 -> 发布共享包 1 -> 开发静态共享包 HAR(Harmony Archive…...

QT6.8安装教程

官网下载 链接&#xff1a; Index of /official_releases/online_installers 这个比较慢 建议去 清华大学开源软件镜像站&#xff1a;Index of /qt/archive/online_installers/4.9/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 根据自己什么系统选择 点击打开…...

【Rust泛型】Rust泛型使用详解与应用场景

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…...

一周学完计算机网络之三:1、数据链路层概述

简单的概述 数据链路层是计算机网络体系结构中的第二层&#xff0c;它在物理层提供的基本服务基础上&#xff0c;负责将数据从一个节点可靠地传输到相邻节点。可以将其想象成一个负责在两个相邻的网络设备之间进行数据 “搬运” 和 “整理” 的 “快递中转站”。 几个重要概念…...

配置ssh无密登录

在root下有一个.ssh文件夹&#xff0c;它的下面有一个known_hosts文件&#xff0c;这个里面记录了哪些其他的主机通过ssh访问过当前的主机。 免密登录原理 &#xff08;2&#xff09;生成公钥和私钥 具体操作&#xff1a; 1. 进入 hadoop1001 2. 运行命令&#xff1a;ssh-keyg…...

南京邮电大学金工实习答案

一、金工实习的定义 金工实习是机械类专业学生一项重要的实践课程&#xff0c;它绝非仅仅只是理论知识在操作层面的简单验证&#xff0c;而是一个全方位培养学生综合实践能力与职业素养的系统工程。从本质上而言&#xff0c;金工实习是学生走出教室&#xff0c;亲身踏入机械加…...

无偿帮写毕业论文

以下教程教你如何利用相关网站和AI免费帮你写一个毕业论文。毕竟毕业论文只要过就行&#xff0c;脱产学习这么多年&#xff0c;终于熬出头了&#xff0c;完成毕设后有空就去多看看亲人好友&#xff0c;祝好&#xff01; 一、找一个论文模板(最好是overleaf) 废话不多说&#…...

【高数上册笔记01】:从集合映射到区间函数

【参考资料】 同济大学《高等数学》教材樊顺厚老师B站《高等数学精讲》系列课程 &#xff08;注&#xff1a;本笔记为个人数学复习资料&#xff0c;旨在通过系统化整理替代厚重教材&#xff0c;便于随时查阅与巩固知识要点&#xff09; 仅用于个人数学复习&#xff0c;因为课…...

大数据从专家到小白

文章目录 数据湖技术Apache Iceberg FlinkHiveHadoopHDFS 数据湖技术 Apache Iceberg Iceberg是一个通用的表格式&#xff08;数据组织格式&#xff09;&#xff0c;它可以适配Presto&#xff0c;Spark等引擎提供高性能的读写和元数据管理功能。 Flink Hive Hadoop HDFS...