avatar
文章
86
标签
36
分类
25
首页
时间轴
标签
分类
友链
关于
hsuwindowBlogs
首页
时间轴
标签
分类
友链
关于

hsuwindowBlogs

SQL JOIN 总结
发表于2025-08-24|Sql
深入理解 SQL 的 7 种 JOIN 操作在 SQL 中,JOIN 是一个非常重要的操作,它用于连接两个或多个表,从而根据条件返回相关数据。不同类型的 JOIN 有不同的连接方式,根据实际需求可以返回不同的数据集。在本文中,我们将通过 学生表(Students) 和 成绩表(Scores) 的例子,深入了解七种常见的 JOIN 操作,并通过 员工表(Employees) 和 部门表(Departments) 的例子讲解 SELF JOIN 和 NATURAL JOIN。 学生表(Students) student_id name department_id 1 Alice 10 2 Bob 20 3 Charlie 10 4 David NULL 成绩表(Scores) student_id score 1 85 2 90 3 75 5 80 1. INNER JOININNER JOIN 返回两个表中 有匹配的行。如果在一个表中没有匹配的记录,那么这条记录将不会出现在结果中。 SQL 查询1234SELECT *...
认识 parquet 文件(二)
发表于2025-08-24
认识 parquet 文件(二)未完待续
自动上传图片到图床的设置
发表于2025-08-14
自动上传图片到图床的设置 上面是 没有勾选 “为相对路径添加./“, 所以可以正常上传图片到图床 (记得在picgo里面打开 使用内置剪贴板上传, 虽然没尝试过 关闭的时候能不能正常使用, 但是既然有这个选项, 那就打开, 肯定是更加兼容适用的) 下面是 勾选了 “为相对路径添加./“, 所以 failed to 上传图片到图床(所以你在网站上看下面的图片, 下面的图片是显示不出来的)
认识 parquet 文件(一)
发表于2025-08-04
认识 parquet 文件(一)Parquet 是一种开源的列式存储文件格式,专门设计用于大规模数据存储。它基于 Apache Arrow 库,并与 Hadoop 生态系统无缝集成。与传统的行式存储(如 CSV 和 JSON)不同,Parquet 使用列式存储数据,可以提高分析操作的性能,特别是在读取大量数据时。 Parquet 格式的基本特点: 列式存储:数据按列而非按行进行存储,这使得在大数据分析中,查询只涉及到需要的列,大大提高了效率。 压缩效率高:由于相同列的值通常是相似的,因此能够实现更高的压缩比,节省存储空间。 支持复杂数据类型:Parquet 可以支持复杂的数据结构,如嵌套数据、数组、Map 等。 支持分区和分布式存储:Parquet 格式特别适合在分布式计算框架(如 Hadoop 和 Spark)中处理大数据集。 Parquet 文件的内部结构Parquet 文件的结构由多个部分组成,以下是 Parquet 文件的主要组成部分: File Header:文件头,标识该文件是一个 Parquet 文件。 Row Groups:Parquet...
配置 Conda 环境与 Terminal 提示符 以及 conda 官方关于 prompt 刷新的说明和讨论
发表于2025-08-04|配置
配置 Conda 环境与终端提示符:从自动激活到彩色路径在 Linux 环境中,conda 是一个非常常用的虚拟环境管理工具,可以让我们方便地管理和切换 Python 环境。今天,我将分享如何配置 自动激活 conda 环境,并且优化 终端提示符,使其更加符合我们的工作需求,尤其是如何显示 完整路径、彩色路径 以及 解决多余的环境名提示问题。 背景作为开发人员或数据科学家,常常需要在多个虚拟环境中切换。使用 conda 管理环境非常方便,但有时在执行命令时我们会遇到一些 提示符显示问题,比如: 环境名显示多余一行; 提示符没有完整路径,只显示当前目录名; conda 环境激活时不够直观等。 这些问题虽然不大,但对于日常使用来说还是会影响体验。接下来,我会总结下我的配置过程,帮助大家实现更加干净、功能强大的终端提示符。 1. 自动激活 conda 环境问题我们希望每次打开终端时,自动进入某个 conda 环境(如 dataenv),而不必每次都手动执行 conda activate dataenv。并且,避免多余的环境名提示,即不希望看到多余的 (dataenv)...
leetcode双指针题解
发表于2025-06-30|算法与实现
本文是基本常见的双指针题解 一、双指针简介二、双指针题解11. 盛最多水的容器看的教程是这个 【盛最多水的容器 接雨水【基础算法精讲 02】】 https://www.bilibili.com/video/BV1Qg411q7ia/?share_source=copy_web&vd_source=423f876c33c4e702693ed0518402c4ff 1234567891011121314class Solution {public: int maxArea(vector<int>& height) { // 三个int类型的都要赋初始值. 尤其是ans初始值为0 // 因为ans返回值一定是正数, 所以在max函数里面不会影响判断 int ans = 0, l = 0, r = height.size() - 1; while(l < r){ int area = (r - l) * min(height[l],...
leetcode动态规划题解
发表于2025-06-30|算法与实现
本文是基本常见的动态规划题解 一、动态规划简介 0-1背包理论基础(一)动规五部曲分析 确定dp数组以及下标的含义 那么这里 i 、j、dp[i][j] 分别表示什么呢? i 来表示物品、j表示背包容量。 即****dp[i][j] 表示从下标为[0-i]的物品里任意取,放进容量为j的背包,价值总和最大是多少****。 确定递推公式 以上过程,抽象化如下: ****不放物品i****:背包容量为j,里面不放物品i的最大价值是dp[i - 1][j]。 ****放物品i****:背包空出物品i的容量后,背包容量为j - weight[i],dp[i - 1][j - weight[i]] 为背包容量为j - weight[i]且不放物品i的最大价值,那么dp[i - 1][j - weight[i]] + value[i] (物品i的价值),就是背包放物品i得到的最大价值 递归公式: dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] +...
将 OpenXLSX 库添加到 C++ 项目
发表于2025-06-29|工具配置
在现代 C++ 项目中,如果你需要读取或写入 Excel .xlsx 文件,OpenXLSX 是一个非常轻量级且纯 C++ 实现的开源库。本文将介绍如何将 OpenXLSX 库集成到你的 C++ 项目中,并提供示例代码帮助你快速上手。 一、OpenXLSX 简介OpenXLSX 是一个用标准 C++17 编写的库,用于读取和写入 .xlsx 文件。它不依赖任何平台特定组件,非常适合嵌入式系统、桌面程序甚至 CLI 工具中。 优点包括: 仅支持 .xlsx(基于 XML 的现代 Excel 格式) 纯 C++17 实现,跨平台 支持读取/写入工作表、单元格、行列等操作 二、安装 OpenXLSX方式一:使用 vcpkg 安装(推荐)如果你使用 vcpkg 作为包管理器,可以直接执行: 1vcpkg install openxlsx 并在你的 CMakeLists.txt 中添加: 12find_package(OpenXLSX CONFIG REQUIRED)target_link_libraries(your_target PRIVATE...
leetcode哈希表题解
发表于2025-06-10|算法与实现
本文是基本常见的哈希表题解 一、哈希表简介一般哈希表都是用来快速判断一个元素是否出现集合里 例如要查询一个名字是否在这所学校里。 要枚举的话时间复杂度是O(n),但如果使用哈希表的话, 只需要O(1)就可以做到。 我们只需要初始化把这所学校里学生的名字都存在哈希表里,在查询的时候通过索引直接就可以知道这位同学在不在这所学校里了。 将学生姓名映射到哈希表上就涉及到了hash function ,也就是哈希函数。 哈希函数,把学生的姓名直接映射为哈希表上的索引,然后就可以通过查询索引下标快速知道这位同学是否在这所学校里了。 如果学生的数量大于哈希表的大小怎么办,此时就算哈希函数计算的再均匀,也避免不了会有几位学生的名字同时映射到哈希表 同一个索引下标的位置。 接下来哈希碰撞登场 一般哈希碰撞有两种解决方法, 拉链法和线性探测法。 常见的三种哈希结构 数组 set map 大体的判断方式: 数组:使用场景哈希值比较小,范围可控,例如26个字母类似的(如果是1, 5,...
高性能网络编程The C10K problem
发表于2025-06-04|高性能网络编程
借着 C10K 问题一起探讨下高性能网络编程的几种方法。 9.1 The C10K problemC10K 问题是由一个叫 Dan Kegel 的工程师提在 1999 年提出来的:如何在一台物理机上,同时保持 10000 条连接(concurrently handling ten thousand connections)。 当然,在现在的条件下,我们使用 libevent 或者 Java Netty 等框架轻轻松松就可以写出支持并发数量超过一万的服务器,经过优化之后,甚至可以达到十万,乃至百万。但在 2000 年左右,解决 C10K 问题可是一个了不起的成就。 现在的问题称为C10M,也就是如何在一台物理机上同时保持一千万条连接! 我们首先来看一下,在系统资源层面是否能够同时支持 10000 条连接(TCP 连接)。 Q: 同时支持 10000 条连接需要大量消耗哪些资源呢? A: 文件描述符,内存,网络带宽。 文件描述符 每个客户端连接都需要在服务器上占用一个文件描述符。一旦文件描述符不够用了,新的连接就会被丢弃。在 Linux...
12…9
avatar
hsuwindow
文章
86
标签
36
分类
25
Follow Me
公告
欢迎光临本站,这是我日常工作和学习整理的总结,希望对你有所帮助.本站内容经过个人加工总结而来,也参考了网友们分享的资料,如有侵权,请第一时间联系我,我将及时进行修改或删除.
最新文章
SQL JOIN 总结2025-08-24
认识 parquet 文件(二)2025-08-24
自动上传图片到图床的设置2025-08-14
认识 parquet 文件(一)2025-08-04
配置 Conda 环境与 Terminal 提示符 以及 conda 官方关于 prompt 刷新的说明和讨论2025-08-04
分类
  • Hexo5
  • NEU课程1
  • Sql1
  • cshsuwindowDIY15
    • C++9
      • grammar9
    • CSDIY1
      • CS61B1
标签
Python 第二个标签可加可不加 conda 网络编程 Butterfly 代码随想录 Hexo 发布规划 UTF-8 Cpp 中文处理 OpenXLSX leetcode DataStructure CS61B CS50 Sql Join 第一个标签 C++ 编辑距离 Ubuntu 算法 C parquet 大数据 学习 CS61A CSDIY 第三方库 题解 picgo 课内学习 AcWing Java typora 计划
归档
  • 八月 2025 5
  • 六月 2025 7
  • 五月 2025 2
  • 一月 2025 1
  • 十一月 2024 3
  • 十月 2024 14
  • 六月 2024 6
  • 五月 2024 27
网站信息
文章数目 :
86
本站访客数 :
本站总浏览量 :
最后更新时间 :
©2019 - 2025 By hsuwindow
框架 Hexo|主题 Butterfly