• 博客(116)
  • 资源 (17)
  • 收藏
  • 关注

原创 使用Go语言实现线程安全的Map

自定义线程安全的SyncMap泛型支持:灵活适配不同类型的键值。线程安全:支持高并发场景的安全访问。可扩展性:易于添加更多功能,如合并操作、条件更新等。通过本文的实现与示例,希望您能更好地理解和应用线程安全Map,构建健壮的并发应用。

2024-11-25 23:24:23 754 1

原创 使用 Go 语言封装 MinIO 相关操作

MinIO 是一个高性能的对象存储服务,兼容 Amazon S3 API,广泛用于存储和管理海量数据。在实际开发中,封装一个便于使用的 MinIO 操作包,可以帮助我们简化操作逻辑,提高代码的可读性和复用性。初始化 MinIO 客户端上传文件下载文件列出文件删除文件获取文件的预签名 URL通过封装 MinIO 的常用操作,我们可以极大简化代码逻辑,提高开发效率。在实际项目中,可以根据需求进一步扩展功能,例如支持更多的操作、增加日志功能或通过配置文件动态加载参数等。

2024-11-24 22:06:26 906

原创 Go语言开发的源代码行数统计工具

是一个开源工具,用于统计各种编程语言的源代码文件数量和代码行数。它支持多种语言,易于扩展以包括自定义语言。简单易用,可以帮助开发者快速了解代码库并跟踪变化。页面下载预编译的二进制文件。

2024-11-21 10:53:34 1177

原创 使用gRPC基于Protobuf传输大文件或数据流

在gRPC中,服务和消息的定义是通过.proto文件进行的。例如,定义一个文件传输服务,可以在这里定义了一个服务,包含了一个Upload方法,该方法接受一个FileChunk类型的流,并返回一个状态。

2024-05-10 14:02:34 2442

原创 极光推送Go语言服务端SDK

jpush-api-golang-client项目地址:https://github.com/Scorpio69t/jpush-api-golang-client概述JPush’s Golang client library for accessing JPush APIs. 极光推送的 Golang 版本服务器端 SDK。该项目参考ylywyn结合极光推送官方文档而来。(原项目年久失修,有很多新特性都没有提供,本项目旨在将其完善,方便大家使用,后续会持续更新,不足之处欢迎大家指正,谢谢~)参考R

2021-12-31 17:45:59 1150 6

原创 HackRF-AIS信号的采集与解调

目录AIS信号采集与解调1、硬件设备2、系统准备3、软件准备4、进行实验(需要去有船只经过的江边才能采集到信号,本次实验于重庆嘉陵江边进行)5、AIS信息解译AIS解调后数据源可去一下连接获取AIS信号采集与解调1、硬件设备​ 硬件设备采用HackRF One,HackRF是一款全开源的硬件项目,其目的主要是为了提供廉价的SDR(软件定义无线电)方案,作者Mike Ossmann在第一版HackRF Jawbreaker时通过Kickstart融资成功,之后Mike Ossmann开始进行了第二版Ha

2021-10-25 16:28:21 2120 4

原创 c/c++ 实现三角函数(不使用库函数) sin/cos/tan/cot

在许多嵌入式系统或计算平台中,可能不方便使用标准数学库函数。在本篇博客中,我们将使用 泰勒展开 来实现常见的三角函数:sin(x)、cos(x)、tan(x) 和 cot(x),而不依赖任何库函数。通过手动实现这些数学公式,我们可以更好地理解三角函数的计算原理,同时为那些受限的环境提供一种实现方案。泰勒展开是数学中一个非常重要的公式,它能够将任何在某点可导的函数展开为一个无限级数。对于三角函数,我们可以利用其在0点的泰勒级数展开来近似计算函数值。sinxx−x33!x55!−。

2020-03-23 22:57:08 4694 1

原创 【华为机试】121. 买卖股票的最佳时机

这篇文章介绍了股票买卖问题的最佳时机解决方案。题目要求在给定股票价格数组中,找到某天买入并在未来某天卖出能获得的最大利润。文章提供了四种主要解法: 一次遍历法:最优解法,时间复杂度O(n),空间复杂度O(1)。通过维护最小价格变量,遍历时计算最大利润差。 暴力解法:双重循环遍历所有可能组合,时间复杂度O(n²),不推荐用于大数据量。 动态规划:使用dp数组记录每日最大利润,时间复杂度O(n),空间复杂度O(n)。 分治法:递归计算左右子数组及跨区间的利润,时间复杂度O(n log n)。 文章包含详细的算法

2025-07-27 10:19:52 317

原创 【华为机试】1094. 拼车

拼车问题题解摘要 本文解决了一个拼车调度问题:给定车辆容量和多个上下车行程,判断能否在不超载的情况下完成所有运输任务。提供了三种解法: 差分数组法(最优解):通过记录各位置人数变化构建差分数组,计算前缀和检查容量。时间复杂度O(n+max(to)),空间复杂度O(max(to))。 排序+模拟法:提取上下车事件排序后模拟乘车过程。时间复杂度O(n log n),空间复杂度O(n)。 优先队列法:按上车位置排序,使用优先队列管理下车顺序。时间复杂度O(n log n),空间复杂度O(n)。 其中差分数组法效率

2025-07-27 08:23:23 837

原创 【华为机试】1248. 统计「优美子数组」

本文介绍了统计数组中恰好包含k个奇数的连续子数组(优美子数组)的三种方法。最优解是前缀和+哈希表法,将奇数视为1、偶数视为0后,问题转化为求前缀和差值为k的子数组个数,时间复杂度O(n),空间复杂度O(n)。滑动窗口法维护包含k个奇数的窗口,数学方法通过记录奇数位置计算子数组个数。代码实现展示了各种方法的Go语言版本,并通过测试用例验证正确性。三种方法都能有效解决问题,前缀和法在效率上最为推荐。

2025-07-27 00:44:52 431

原创 【华为机试】437. 路径总和 III

本题要求统计二叉树中路径和等于目标值的路径数量。摘要如下: 解题思路提供三种方法: 最优解是前缀和+哈希表法(O(n)时间复杂度),通过记录路径前缀和,快速查找满足条件的路径 双重DFS法(O(n²))对每个节点作为起点进行DFS搜索 递归回溯法(O(n²))通过回溯遍历所有可能路径 代码实现给出了前缀和解法的Go语言版本,使用哈希表存储前缀和出现次数,在DFS遍历时统计满足条件的路径数。同时包含复杂度分析、测试用例和辅助函数。 关键点: 路径不要求从根节点开始或叶子节点结束 使用前缀和技巧可以高效统计路径

2025-07-25 09:18:44 830

原创 【华为机试】560. 和为 K 的子数组

本文介绍了统计数组中满足和为k的连续子数组个数的算法。主要包括三种解法:1)基于前缀和与哈希表的O(n)最优解,适用于所有情况;2)暴力枚举法,时间复杂度O(n²),适合小规模数据;3)滑动窗口法,仅适用于非负数数组。文中提供了详细的Go代码实现,包括核心的前缀和哈希表解法,以及暴力枚举和滑动窗口的变体。通过示例测试展示了不同方法的适用场景,如处理负数时滑动窗口不适用的情况。推荐使用前缀和+哈希表的方法,因其通用性强且效率高。

2025-07-25 09:15:41 361

原创 【华为机试】724. 寻找数组的中心下标

这篇文章介绍了寻找数组中心下标的问题,给出了三种解决方案。中心下标是指数组中左侧元素之和等于右侧元素之和的位置。第一种方法使用前缀和数组计算左右和,时间复杂度O(n),空间复杂度O(n)。第二种方法通过数学优化,利用总和与当前元素的关系直接判断,空间复杂度优化为O(1)。第三种是暴力解法,不推荐使用。文章还提供了Go语言实现代码和测试用例,并总结了关键点,包括数学关系、边界处理等。最后列举了相似题目,帮助读者巩固相关知识。

2025-07-24 22:19:06 960

原创 【华为机试】1208. 尽可能使字符串相等

本文解决字符串转换问题,要求在预算限制内找到最大可转换的子串长度。核心思路是将问题转化为滑动窗口问题,通过双指针维护当前窗口内的开销总和。当窗口开销超过预算时左指针右移,否则右指针扩展窗口并更新最大长度。最优解法时间复杂度为O(n),空间复杂度O(1)。还提供了前缀和+二分查找的替代方案(O(n log n))。测试用例验证了算法正确性,包括边界情况如maxCost=0时的处理。关键是将字符转换开销转化为数值问题,利用滑动窗口高效求解。

2025-07-24 22:10:48 1087

原创 【华为机试】1004. 最大连续1的个数 III

本文介绍了LeetCode 1004题"最大连续1的个数 III"的三种解法。给定一个二进制数组和一个整数k,求最多翻转k个0后能得到的最大连续1的长度。最优解法是滑动窗口法(O(n)时间复杂度,O(1)空间复杂度),通过维护一个包含最多k个0的窗口来寻找最长子数组。另外还提供了前缀和+二分查找(O(n log n))和动态规划(O(nk))两种解法。文章包含详细的问题描述、示例、解题思路、代码实现(Go语言)以及复杂度分析,并提供了测试用例验证不同解法的正确性。滑动窗口法因其高效性被推

2025-07-23 09:26:31 966

原创 【华为机试】209. 长度最小的子数组

本题要求找到数组中和≥target的最短连续子数组长度。采用滑动窗口算法,维护双指针left和right表示窗口边界,初始sum=0。当sum<target时扩大窗口(right右移),sum≥target时缩小窗口(left右移)并更新最小长度minLen。时间复杂度O(n),空间复杂度O(1)。若不存在满足条件的子数组则返回0。 示例说明: 输入:nums=[2,3,1,2,4,3], target=7 过程:窗口[2,3,1,2]和=8≥7→记录长度4→缩小窗口;[3,1,2,4]和=10≥7→

2025-07-23 08:55:26 478

原创 【华为机试】684. 冗余连接

题目要求在给定的连通无向图中找到一条冗余边,删除后使剩余部分成为一棵树。该图由n个节点的树添加一条边后形成。使用并查集算法可以高效解决该问题:初始化并查集后,顺序处理每条边,当发现某条边的两个端点已连通时,这条边即为冗余边。时间复杂度为O(nα(n)),在最坏情况下优于DFS的O(n²)解法。示例输入[[1,2],[1,3],[2,3]]输出[2,3],因为删除该边可消除环。

2025-07-22 09:56:28 1058

原创 【华为机试】547. 省份数量

这道题考察计算无向图中连通分量的数量。给定城市间的邻接矩阵,省份即连通分量。三种主要解法:1) 深度优先搜索(DFS):递归标记可达节点,时间复杂度O(n²),空间O(n);2) 广度优先搜索(BFS):队列层次遍历,时空复杂度同DFS;3) 并查集:高效合并集合,采用路径压缩和按秩优化,时间复杂度O(n²α(n))。根据场景选择,DFS/BFS适合静态图,并查集适合动态连通性问题。

2025-07-22 09:45:38 606

原创 【华为机试】503. 下一个更大元素 II

本文介绍了解决循环数组中寻找每个元素下一个更大元素的算法。通过将循环数组视为两倍长度的线性数组,利用单调栈技术高效解决该问题。主要方法包括:1)单调栈+数组复制法,时间复杂度O(n),空间复杂度O(n);2)单调栈+两遍遍历法,避免了数组复制;3)暴力枚举法,虽然直观但效率较低。文章详细分析了算法思路、实现步骤、复杂度比较,并通过数学证明和流程图展示了算法的正确性和执行过程。核心在于维护单调递减栈和处理循环索引,能有效解决循环数组中的元素查找问题。

2025-07-21 15:39:30 608

原创 【华为机试】739. 每日温度

摘要: 本题要求根据每日温度数组,找到每个温度后面第一个更高温度出现的天数差。最优解法采用单调栈,维护温度索引的递减栈,遇到更高温度时弹出栈顶并计算天数差。该方法时间复杂度O(n),空间复杂度O(n)。另有暴力枚举(O(n²))、从右向左遍历(O(n))和动态规划优化(O(n))等解法。核心在于利用单调栈性质高效定位下一个更高温度,适用于大规模数据。

2025-07-21 14:07:05 537

原创 【华为机试】85. 最大矩形

这篇文章介绍了在二维二进制矩阵中寻找只包含1的最大矩形面积的算法。主要思路是将二维问题转化为多个一维柱状图问题,利用单调栈高效求解。文章提供了四种解法:单调栈法(推荐)、动态规划+单调栈、暴力枚举及优化暴力枚举。其中单调栈法的时间复杂度最优,为O(m×n),通过构建高度数组并逐行应用84题的单调栈算法来求解。其他方法包括动态规划优化高度计算、暴力枚举所有可能矩形等,但效率较低。文章包含示例、算法步骤和Go语言实现代码。

2025-07-21 13:42:06 545

原创 【华为机试】84. 柱状图中最大的矩形

题目要求在柱状图中寻找最大矩形面积。核心思路是对于每个柱子,找到其左右边界(第一个比它矮的柱子),计算宽度和面积。最优解法是使用单调栈,时间复杂度O(n),空间复杂度O(n)。该算法维护递增栈,当遇到较矮柱子时弹出栈顶并计算面积,能高效确定每个柱子的左右边界。其它方法如预处理左右边界、暴力枚举或分治法,在效率或实现复杂度上不如单调栈优化。

2025-07-21 09:44:17 1073

原创 【华为机试】240. 搜索二维矩阵 II

题目要求在行、列有序的二维矩阵中高效搜索目标值。最优解法是从右上角或左下角开始搜索(时间复杂度O(m+n)),利用元素的行列有序性每次可排除一行或一列。次优解是逐行二分查找(O(mlogn)),而分治法理论效率较高但实现复杂。核心在于利用矩阵的双向有序性进行剪枝优化。

2025-07-21 09:29:44 891

原创 【华为机试】169. 多数元素

本文介绍了查找数组多数元素的经典问题,分析了哈希统计、排序、摩尔投票等解法。重点阐述了摩尔投票算法的核心思想:通过元素间的抵消操作,最终剩余的必是出现次数超过半数的元素。该算法仅需O(n)时间和O(1)空间,是最优解。文章通过流程图详细展示了算法执行过程,对比了不同解法的时间/空间复杂度,并讨论了边界处理、应用场景及算法扩展。最后给出了算法正确性证明,验证了摩尔投票法在保证多数元素存在前提下的可靠性。

2025-07-20 15:35:40 1199

原创 【华为机试】23. 合并 K 个升序链表

摘要 本文讨论了合并K个升序链表的算法问题,提供了多种解法并分析其性能。主要方法包括:1)逐一合并法(O(kn)时间);2)分治合并法(O(nlogk)时间,最优解);3)优先队列法(O(nlogk)时间);4)数组排序法(O(nlogn)时间)。重点分析了分治算法的实现,通过递归将问题分解为两两合并,并详细说明了链表合并过程。文章还包含算法流程图解、时间复杂度对比、边界处理技巧以及实际应用场景,最后给出了Go语言实现代码,特别推荐分治合并法作为最优解决方案。

2025-07-20 14:01:00 1026

原创 【华为机试】509. 斐波那契数

斐波那契数列问题是一个经典的递归和动态规划案例。文章详细介绍了多种解法及其优化思路:1)朴素递归法(时间复杂度O(2^n));2)备忘录递归法(通过哈希表存储结果避免重复计算,优化至O(n));3)动态规划法(自底向上构建解);4)空间优化版本(仅保存前两项)。重点分析了备忘录优化原理,通过存储中间结果显著提升效率。文章还比较了各解法的时间/空间复杂度,并给出了实际应用场景和扩展问题。最后提供了Go语言实现代码,包括递归、备忘录递归和动态规划三种实现方式。

2025-07-19 12:06:07 802

原创 【华为机试】112. 路径总和

该题解要求判断二叉树中是否存在从根节点到叶子节点的路径,其节点值之和等于给定的目标和。算法采用深度优先搜索(DFS)递归遍历二叉树,在每个节点更新剩余目标和,当到达叶子节点时检查剩余值是否为0。时间复杂度O(n)(最坏情况遍历所有节点),空间复杂度O(h)(递归栈深度,h为树高)。关键点在于正确处理空节点和叶子节点判断,以及递归过程中路径和的传递。

2025-07-19 11:43:05 703

原创 【华为机试】70. 爬楼梯

【摘要】爬楼梯问题是一个经典的动态规划问题,要求计算爬到n阶楼梯的不同方法数(每次可爬1或2阶)。其本质是斐波那契数列的变形,递推公式为f(n)=f(n-1)+f(n-2)。解题方法包括:1)标准动态规划(O(n)时间/空间);2)空间优化动态规划(O(n)时间,O(1)空间);3)记忆化递归;4)数学通项公式法;5)矩阵快速幂法(O(logn)时间)。最优解为空间优化动态规划,在效率与实现复杂度间取得平衡。问题揭示了动态规划中状态转移和空间优化的核心思想。

2025-07-18 09:42:11 712

原创 【华为机试】213. 打家劫舍 II

文章摘要: 本题是环形房屋的打家劫舍问题,要求在不触发警报(不偷相邻房屋)的情况下获得最大金额。核心解法是将环形问题拆分为两个线性子问题:1)考虑偷第一间而不偷最后一间;2)考虑不偷第一间而可能偷最后一间。使用动态规划,状态转移方程为 dp[i] = max(dp[i-1], dp[i-2] + nums[i]),空间可优化至O(1)。时间复杂度O(n),需注意边界条件(数组长度为1或2时直接返回)。最优解通过比较两种情况的最高金额得到。

2025-07-18 09:18:26 1035

原创 【华为机试】123. 买卖股票的最佳时机 III

摘要 本文探讨了股票买卖问题的最优解,限制最多完成两笔交易。通过动态规划方法,定义了四种状态(两次买入和卖出)来追踪最大利润。给出了三种解法:五状态动态规划(O(n)时间,O(1)空间)、通用k笔交易解法(O(nk)时间)和分割数组法(O(n)时间)。重点分析了状态转移方程和具体示例,展示了如何通过状态更新获得最优解。最优解法能在单次遍历中高效计算最大利润,适用于大规模数据。

2025-07-17 09:49:55 1076

原创 【华为机试】122. 买卖股票的最佳时机 II

本文介绍了122题"买卖股票的最佳时机II"的多种解法。关键思路是:通过贪心算法累加所有相邻上涨日的价差(时间复杂度O(n),空间O(1)),或使用动态规划维护持有/不持有股票的状态(时间O(n),空间可优化至O(1))。贪心策略直观高效,只需遍历一次价格数组,每次遇到价格上涨就累加利润;动态规划则通过状态转移方程计算最优解。文章还对比了不同方法的复杂度,并提供了示例解析和状态转移图,证明贪心算法的正确性。该问题在短线交易和算法交易中有实际应用价值。

2025-07-17 09:20:00 1016

原创 【华为机试】96. 不同的二叉搜索树

二叉搜索树计数问题解析 问题概述 给定整数n,计算由1到n节点组成的不同二叉搜索树(BST)的数量。这是一个典型的卡塔兰数问题。 核心解法 动态规划:时间复杂度O(n²),空间复杂度O(n) 状态转移方程:dp[i] = Σ(dp[j-1] × dp[i-j]),其中j为根节点选择 初始化:dp[0]=1(空树),dp[1]=1(单节点) 卡塔兰数公式:时间复杂度O(n),空间复杂度O(1) 直接计算:C(n) = (2n)!/((n+1)!×n!) 递推公式:C(n) = C(n-1)×2×(2n-1)/

2025-07-16 09:43:26 904

原创 【华为机试】200. 岛屿数量

摘要 本题解详细介绍了解决二维网格中岛屿数量问题的四种方法:DFS、BFS、并查集和DFS(不修改原数组)。核心思想是通过遍历网格识别连通区域,利用搜索算法标记已访问陆地以避免重复计算。DFS采用递归深入标记整个岛屿;BFS使用队列实现层次遍历;并查集通过合并相邻陆地统计连通分量。解法对比显示,DFS实现简洁但可能栈溢出,BFS避免栈溢出但需额外队列空间,并查集支持动态查询但实现复杂。文章包含算法流程图、复杂度分析、示例演示、测试用例和相关题目,适用于图像处理、网络分析等实际应用场景。

2025-07-16 09:16:29 657

原创 【华为机试】42. 接雨水

给定一组柱子的高度,计算能接多少雨水。核心思路是利用木桶原理,每个位置的雨水量取决于左右最高柱子的较小值减去当前高度。解题方法包括:暴力法(O(n²))、动态规划(O(n)空间)、双指针(最优,O(1)空间)和单调栈(O(n)空间)。其中双指针法通过左右指针动态维护最高值,无需额外空间,是最优解。该问题在工程设计和算法竞赛中有广泛应用,体现了数组处理和空间优化技巧。

2025-07-15 09:28:35 1197

原创 【华为机试】3. 无重复字符的最长子串

本文介绍了求解无重复字符最长子串长度的三种方法:暴力法(O(n³))、滑动窗口法(O(n))和优化滑动窗口法。核心思路是使用滑动窗口技术,通过哈希表记录字符位置来动态调整窗口边界。该方法高效解决了字符串处理中的重复检测问题,适用于文本分析、网络协议等多种场景。文章详细解析了算法流程、实现代码、性能对比及优化技巧,并提供了测试用例和实际应用案例,是掌握滑动窗口技术的经典范例。

2025-07-15 09:10:23 563

原创 【华为机试】11. 盛最多水的容器

摘要: 盛最多水容器问题要求在给定高度数组中找到两条垂直线,使其与x轴构成的容器面积最大。关键公式为面积 = 最小高度 × 宽度。暴力解法(O(n²))遍历所有可能组合,而优化的双指针解法(O(n))从两端向中间移动,每次移动较矮的指针以寻求更大高度。双指针算法通过动态调整指针位置,有效减少计算量,适用于大数据场景。示例输入[1,8,6,2,5,4,8,3,7]的最大面积为49,由高度8和7相距7个单位构成。该算法模式广泛应用于雨水收集、股票买卖等区间优化问题。(150字)

2025-07-14 10:32:27 759

原创 【华为机试】HJ52 计算字符串的编辑距离

本文介绍了字符串编辑距离(Levenshtein距离)的计算方法,它衡量两个字符串之间由一个转变成另一个所需的最少单字符编辑操作次数。算法采用动态规划实现,通过构建状态转移矩阵,考虑插入、删除和替换三种操作,最终得到最优解。文章详细分析了算法流程、状态转移方程、边界条件处理以及空间优化技巧,并提供了完整的Go语言实现代码。该算法在文本相似度、拼写检查等场景有广泛应用,是动态规划的经典案例。

2025-07-14 09:01:20 1274

原创 【华为机试】HJ24 合唱队

合唱队问题要求从n位同学中选出最少的出列人数,使剩余同学形成先严格递增后严格递减的队形。解题思路是结合最长递增子序列(LIS)和最长递减子序列(LDS)的动态规划方法。具体步骤: 计算LIS数组:记录以每位同学结尾的最长递增序列长度 计算LDS数组:记录以每位同学开头的最长递减序列长度 枚举每个位置作为峰值,计算合唱队形长度(LIS[i] + LDS[i] - 1) 找出最大队形长度,需要出列人数为n - maxLength 示例输入8人,身高186 186 150 200 160 130 197 200,

2025-07-13 11:10:01 349

原创 【华为机试】HJ67 24点游戏算法

24点游戏算法要求判断四个1-10的整数能否通过加减乘除和括号组合得到24。该问题采用递归回溯方法,枚举所有数字组合和运算符排列,通过浮点数精度控制(如1e-6误差)处理除法运算。算法核心是分治思想:每次选取两个数字进行四种运算,将结果递归处理直至只剩一个数字时与24比较。需注意交换律优化(加法乘法只需计算一次)和除零检查。示例表明如7×1×2+10=24的组合返回true,而全1组合返回false。该算法完全搜索所有可能路径,时间复杂度约为O(4^3×3!),适用于游戏开发和数学教育场景。

2025-07-13 10:47:26 409

原创 【华为机试】HJ61 放苹果

本文分析了将m个相同苹果放入n个相同盘子的组合问题。通过动态规划方法解决整数分拆问题,核心思路是建立二维DP表表示状态转移,其中dp[i][j]表示i个苹果放入j个盘子的方案数。关键点在于处理边界条件(m=0或n=1时返回1)和状态转移方程(当i<j时dp[i][j]=dp[i][i],否则dp[i][j]=dp[i][j-1]+dp[i-j][j])。算法时间复杂度O(m×n),适用于0≤m≤10且1≤n≤10的输入范围,示例显示3个苹果放2个盘子有2种分法,7

2025-07-12 15:29:08 386

LFS-BOOK-9.0 构建自己的Linux系统

LFS──Linux from Scratch,就是一种从网上直接下载源码,从头编译LINUX的安装方式。它不是发行版,只是一个菜谱,告诉你到哪里去买菜(下载源码),怎么把这些生东西( raw code) 作成符合自己口味的菜肴──个性化的linux,不单单是个性的桌面。

2019-11-28

机器学习个人笔记完整版v5.4.docx

吴恩达机器学习个人笔记。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。 它是人工智能的核心,是使计算机具有智能的根本途径。

2020-05-18

PyQt-经典小游戏俄罗斯方块

俄罗斯方块是一款风靡全球的经典游戏,其简单的规则、挑战性的难度和极具吸引力的游戏性使其成为了无数玩家钟爱的经典之作。而现在,通过PyQt框架的支持,这款经典小游戏焕发出新的生机与活力,为玩家们提供了全新的游戏体验。PyQt-经典小游戏俄罗斯方块,是一款基于PyQt框架开发的经典游戏重制版。该游戏在保留原版俄罗斯方块所有经典玩法的基础上,通过PyQt框架的强大功能,为玩家们呈现出更加流畅、精美的游戏画面和更加灵活、友好的操作体验。

2024-03-04

Python-100-Days

这个是GitHub上的一个项目打包:Python - 100天从新手到大师,附上GitHub地址:https://github.com/jackfrued/Python-100-Days#python---100天从新手到大师

2019-07-15

AIS解调后数据(未解码)

2021-10-14 于重庆长江边采集的AIS信号

2021-10-25

C++命令行版贪吃蛇小游戏

C++命令行版贪吃蛇小游戏,适合学生、C/C++初学者学习使用。

2021-12-24

C/C++学生成绩管理系统

选题3学生成绩管理一、设计要求由于同学们已经学习了指针、链表、文件读写等基本知识,为了与后续课程, 如数据结构、数据库系统等有一个知识体系上的衔接,特设置一个信息管理类的课题《成绩管理系统》, 其它诸如人事管理、学籍管理、图书管理、通讯录管理等,结构类似,仅管理对象有所不同。 学生信息包括:学号、姓名、专业、班级等。 课程信息包括:课程名称、课程编号、学分数等。 学生课程成绩信息包括:学号、课程编号、课程成绩、开课学期等。 主要功能有:对学生信息、课程信息、成绩信息进行添加、修改、删除、读出、写入、查找、排序、计算总分、平均分、分类汇总等。 编写代码,运行程序后,显现下面的参考界面: 成绩管理============ 1.输入学生成绩 2.修改学生成绩 3.删除学生成绩 4.计算每位学生的总分 5.计算每位学生的平均分 6.按学号或姓名查询学生成绩 7.按班级查询学生成绩 8.成绩排序 9.按班级统计学科总分、平均分等 请选择(1~9,0:退出):选择一个菜单后,显示结果。

2021-12-24

c/c++实现俄罗斯方块

基于EsayX使用C/C++实现俄罗斯方块,EasyX 是针对 C/C++ 的图形库,可以帮助使用C/C++语言的程序员快速上手图形和游戏编程。

2021-12-24

Learning WebRTC配套代码.zip

Learning WebRTC随书配套代码。 WebRTC是一个支持网络浏览器进行实时语音对话或视频对话的软件架构。本书使用形象的案例介绍,逐步深入地阐述了 WebRTC 的幕后工作原理。通过阅读本书,读者可以快速、有效地掌握创建一个 WebRTC 应用所必需的知识,包括获取用户设备信息、创建 WebRTC 应用的客户端和服务器、连接用户并发送数据、文件共享、数据信息安全和性能优化。

2019-06-25

基于Linux下数字签名技术的实现.pdf

运用非对称密钥加密技术与数字摘要技术描绘出数字签名技术的工作原理图,使用Linux系统中的shell命令实现数字签名技术中的创建私钥、导出公钥、私钥签名、公钥校验等实践操作,很好地展现了数字签名技术实践应用的可操作性。

2020-02-03

AtomSetup-x64.exe 1.54.0 最新版

最新版Atom

2021-01-18

Python-100-Days.tar.gz(更新,完整版)

这个是GitHub上的一个项目打包:Python - 100天从新手到大师,附上GitHub地址:https://github.com/jackfrued/Python-100-Days#python---100天从新手到大师

2019-11-27

Python编程无师自通-专业程序员的养成.zip

Python编程无师自通-专业程序员的养成 畅销Python编程类入门书,美国亚马逊Kindle编程类排行榜榜一。 作者从文科毕业,通过自学编程转行为专业程序员,在硅谷工作多年后成功技术创业。本书不仅教读者如何使用Python语言编程,还会介绍其他书中所忽略的、编程初学者应该了解并掌握的其他所有知识点。

2019-04-30

PYTHON 网络爬虫实战

下载后解压即可,高清pdf带书签,童叟无欺。 本书从Python的安装开始,详细讲解了Python从简单程序延伸到Python网络爬虫的全过程。本书从实战出发,根据不同的需求选取不同的爬虫,有针对性地讲解了几种Python网络爬虫。本书共8章,涵盖的内容有Python语言的基本语法、Python常用IDE的使用、Python第三方模块的导入使用、Python爬虫常用模块、Scrapy爬虫、Beautiful Soup爬虫、Mechanize模拟浏览器和Selenium模拟浏览器。本书所有源代码已上传网盘供读者下载。本书内容丰富,实例典型,实用性强。适合Python网络爬虫初学者、数据分析与挖掘技术初学者,以及高校及培训学校相关专业的师生阅读。

2019-07-09

微信小程序:开发入门及案例详解.zip

本书全面介绍微信小程序的开发思路、技术、工具与案例,涉及小程序开发的方方面面。主要内容包括:前端开发基础、小程序开发基础、小程序组件、AIP详解、实例分析等。本书案例丰富、讲解细腻、实用性强,可帮助读者从零开始快速入门小程序开发。

2019-07-04

Linux Bash编程与脚本应用实战

特别好用的bash入门教程,Linux系统的发布版本目前有很多,而Debian系列的Ubuntu系统是使用率较高的Linux系统,在Ubuntu系统中默认安装的Bash也是所有Linux系统中使用率较高的脚本语言,因此本书采用Linux Bash来讲解脚本语言编程与应用。

2019-04-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除