-
HashMap 源码分析
所属栏目:[大数据] 日期:2021-05-21 热度:56
HashMap 源码分析 1.结构 1. 继承 ??该类继承自 AbstractMap 这个类似于 ArrayList 2. 实现 具体如下: 首先这个类是一个 Map 自然有 Map 接口 然后就是两个集合框架肯定会实现的两个接口 Cloneable,Serializable 。 3. 主要字段 1. 属性字段 // 默认大小 16[详细]
-
ReentrantLock 与 AQS 源码分析
所属栏目:[大数据] 日期:2021-05-21 热度:92
ReentrantLock 与 AQS 源码分析 1. 基本结构 ?? 重入锁 ReetrantLock,JDK 1.5新增的类,作用与synchronized关键字相当,但比synchronized更加灵活。ReetrantLock本身也是一种支持重进入的锁,即该锁可以支持一个线程对资源重复加锁,但是加锁多少次,就必须[详细]
-
SpringCloud:基础
所属栏目:[大数据] 日期:2021-05-21 热度:154
SpringCloud:基础 SpringCloud 是微服务架构的一个实现框架,说他是一个框架更不如说他是一个生态,他包含了很多个技术,将这些技术组合起来形成我们的微服务架构应用。 1.SpringCloud vs Dubbo 最大区别:SpringCloud抛弃了Dubbo的RPC通信,采用的是基于HT[详细]
-
Semaphore 源码分析
所属栏目:[大数据] 日期:2021-05-21 热度:155
Semaphore 源码分析 1. 在阅读源码时做了大量的注释,并且做了一些测试分析源码内的执行流程,由于博客篇幅有限,并且代码阅读起来没有 IDE 方便,所以在 github 上提供JDK1.8 的源码、详细的注释及测试用例。欢迎大家 star、fork ! 2. 由于个人水平有限,[详细]
-
LeetCode-Palindromic Substrings
所属栏目:[大数据] 日期:2021-05-21 热度:86
package Classify.DP.Medium; import org.junit.jupiter.api.Test; public class PalindromicSubstrings { /** * 基本思路:这里的 dp 方程的每一个元素就代表我要以当前元素作为回文子串的结尾时候的回文子串的数量 * 那么递推公式就是以上一个元素结尾时候[详细]
-
LinkedList 源码分析
所属栏目:[大数据] 日期:2021-05-21 热度:197
LinkedList 源码分析 1.结构 1. 继承 ??该类继承自 AbstractSequentialList 这个是由于他是一个顺序的列表,所以说继承的是一个顺序的 List 2. 实现 这个类实现的接口比较多,具体如下: 首先这个类是一个 List 自然有 List 接口 然后由于这个类是实现了 Deq[详细]
-
MyBatis笔记一:GettingStart
所属栏目:[大数据] 日期:2021-05-21 热度:140
MyBatis笔记一:GettingStart 1.MyBatis优点 我们的工具和各种框架的作用就是为了我们操作数据库简洁,对于一些数据库的工具能帮我们少写一些处理异常等等的代码,但是他们并不是自动化的,很多的操作还是需要我们自己进行,所以我们的框架就帮我们把中间黑[详细]
-
MyBatis笔记二:配置
所属栏目:[大数据] 日期:2021-05-21 热度:51
MyBatis笔记二:配置 1.全局配置 1.properites 这个配置主要是引入我们的 properites 配置文件的: properties resource="db.properties"/environments default="development" environment id="development" transactionManager type="JDBC"/ dataSource typ[详细]
-
将文件放入按上次修改时间建立的文件夹内
所属栏目:[大数据] 日期:2021-05-21 热度:130
用到的我感兴趣的函数:copy($source,$dest),filemtime($filename) 代码如下: 1 ? PHP 2 /* 3 按文件修改或创建时间将文件放入分类的文件夹 4 */ 5 6 // test 7 $path = 'file' ; 8 createDeleteFile( $path ); 9 10 将文件复制到按修改时间建立的文件夹,[详细]
-
清除超链接,但保留文字
所属栏目:[大数据] 日期:2021-05-21 热度:107
用到的函数有 preg_match_all($pattern,$content,$match); preg_replace($pattern,$replacement,$limit,$count) 思路: (1)提取超链接部分。 (2)将超链接部分用不不带超链接的文字部分替换。 难点:正则表达式 匹配超链接的正则表达式 $pattern = '/a.*?[详细]
-
go get下载包失败问题
所属栏目:[大数据] 日期:2021-05-21 热度:160
由于某些不可抗力的原因,国内使用 go get 命令安装包时会经常会出现timeout的问题。本文介绍几个常用的解决办法。 从github克隆 golang在github上建立了一个镜像库,如 https://github.com/golang/net 就对应是 https://golang.org/x/net 的镜像库。 要下载[详细]
-
go-admin在线开发平台学习-3[细节解析]
所属栏目:[大数据] 日期:2021-05-21 热度:115
本章节主要的内容是对go-admin中的一些有趣编码进行分析,为自己以后提供一些借鉴 使用cli方式启动项目 使用cobra[眼镜蛇]完成强壮cli的工具,确保稳定。 使用cli的方式启动项目的好处显而易见,可以在进行配置的自定义化,而不是固定的使用某个配置文件中的[详细]
-
now-go时间百宝箱
所属栏目:[大数据] 日期:2021-05-21 热度:187
golang不像 C# , Java 这种高级语言,有丰富的语法糖供开发者很方便的调用。所以这便催生出很多的开源组件,通过使用这些第三方组件能够帮助我们在开发过程中少踩很多的坑。 时间处理是所有语言都要面对的一个问题, parse 根据字符串转为date类型, tostri[详细]
-
go-admin在线开发平台学习-1[安装、配置、启动]
所属栏目:[大数据] 日期:2021-05-21 热度:83
项目介绍 go-admin 是一个中后台管理系统,基于(gin,gorm,Casbin,Vue,Element UI)实现。主要目的是为了让开发者更专注业务,减少重复代码的编写,节省时间,提升人效,缩短项目周期,提升软件的开发效率以及质量。 下载项目 git clone https://github.com/[详细]
-
cobra-强大的CLI应用程序库
所属栏目:[大数据] 日期:2021-05-21 热度:119
cobra介绍 Cobra是一个用于创建强大的现代CLI应用程序的库,也是一个用于生成应用程序和命令文件的程序。 Cobra用于许多Go项目,如Kubernetes、Hugo和Github CLI等。此列表包含了使用Cobra的更广泛的项目列表。 GitHub地址 https://github.com/spf13/cobra[详细]
-
go好用的类型转换第三方组件
所属栏目:[大数据] 日期:2021-05-21 热度:69
Cast介绍 开源地址 https://github.com/spf13/cast Cast是什么? Cast是一个库,以一致和简单的方式在不同的go类型之间转换。 Cast提供了简单的函数,可以轻松地将数字转换为字符串,将接口转换为bool类型等等。当一个明显的转换是可能的时,Cast会智能地执[详细]
-
go-admin在线开发平台学习-2[程序结构分析]
所属栏目:[大数据] 日期:2021-05-21 热度:76
紧接着上一篇,本文我们对go-admin下载后的源码进行分析。 首先对项目所使用的第三方库进行分析,了解作者使用的库是否是通用的官方库可以有助于我们更快地阅读程序。接着对项目的main()方法进行分析,因为程序使用cli的方式启动,对cli不同的命令进行分析。[详细]
-
使用Python音频双通道分离
所属栏目:[大数据] 日期:2021-05-21 热度:55
某些音频是双方对话,有可能需要对音频作通道的分离。 示例代码如下: 1 # !/usr/bin/env python 2 -*- coding: utf-8 -*- 3 """ 4 音频双通道分离 5 6 import sys 7 numpy as np 8 from scipy.io wavfile 9 from converter mp3_to_wav 10 11 12 def split_c[详细]
-
Python的logging模块基本用法
所属栏目:[大数据] 日期:2021-05-21 热度:110
Python 的 logging 模块的简单用法 在服务器部署时,往往都是在后台运行。当程序发生特定的错误时,我希望能够在日志中查询。因此这里熟悉以下 logging 模块的用法。 logging 模块定义了报告错误和状态信息的标准 API。 logging 的组件 日志系统有 4 个相互[详细]
-
Python实现简单的梯度下降法
所属栏目:[大数据] 日期:2021-05-21 热度:158
Python 实现简单的梯度下降法 机器学习算法常常可以归结为求解一个最优化问题,而梯度下降法就是求解最优化问题的一个方法。 梯度下降法 (gradient descent)或 最速下降法 (steepest decent),是求解 无约束最优化问题 的一种最常用的方法。 梯度下降法[详细]
-
【GPU加速系列】PyCUDA(一):上手简单操作
所属栏目:[大数据] 日期:2021-05-21 热度:81
PyCUDA 可以通过 Python 访问 NVIDIA 的 CUDA 并行计算 API。 具体介绍和安装可以参考?PyCUDA 官网文档和?pycuda PyPI。 本文涵盖的内容有: 通过 PyCUDA 查询 GPU 信息。 NumPy array 和 gpuarray 之间的相互转换。 使用 gpuarray 进行基本的运算。 使用 El[详细]
-
NumPy基本操作快速熟悉
所属栏目:[大数据] 日期:2021-05-21 热度:172
NumPy 是 Python 数值计算非常重要的一个包。很多科学计算包都是以 NumPy 的数组对象为基础开发的。 本文用代码快速过了一遍 NumPy 的基本操作,对 NumPy 整体有一个把握。希望能对读者有帮助。 NumPy ndarray:多维数组对象 ndarray 是 NumPy 很重要的特性[详细]
-
Python调用百度接口(情感倾向分析)和讯飞接口(语音识别、关键
所属栏目:[大数据] 日期:2021-05-21 热度:137
本示例的过程是: 1. 音频转文本 2. 利用文本获取情感倾向分析结果 3. 利用文本获取关键词提取 ? 首先是讯飞的语音识别模块。在这里可以找到非实时语音转写的相关文档以及 Python 示例。我略作了改动,让它可以对不同人说话作区分,并且作了一些封装。 语音[详细]
-
Python3如何上传自己的PyPI项目
所属栏目:[大数据] 日期:2021-05-21 热度:129
有过一定的 Python 经验的开发者都知道,当引入第三方包时,我们常常会使用 pip install 命令来下载并导入包。 那么,如何写一个自己的包,上传到 PyPI 呢,其他开发者也可以通过 pip install 命令下载并导入? 本文提供了最简单的示例。 准备好项目目录 创[详细]
-
Python使用进程间共享变量来控制两个进程(监听键盘和相机录制)
所属栏目:[大数据] 日期:2021-05-21 热度:179
我有个简单的应用需求: 1. 该应用随时会监听键盘的输入; 2. 当输入指定键时会控制相机录制的启动和关闭。 监听键盘是一个事件循环,相机录制也是一个循环录制的过程。我试着用 Python 启动两个进程,并用两个进程共享变量的更新来控制两个进程的交互。 监[详细]