课程学习

多线程学习第四篇

## 4、线程同步机制 - 并发:**同一对象被多个线程同时操作**(抢票) - 线程同步是一个等待机制,多个需要同时访问次对象的线程进入这个**对象的等待池**形成队列,等待前一个线程使用完毕,下一个线程才能使用。 形成线程安全的条件:==**队列和锁**== 由于同一进程的多个线程共享同一块存储 ......
线程

多线程学习第五篇

## 5、线程协作(线程通信) 应用场景:生产者和消费者问题 - 假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库,消费者将仓库中产品取走消费。 - 如果仓库中没有产品,则将生产者将产品放入仓库,否则停止生产并等待,直到仓库中的产品被消费者取走为止。 - 如果仓库中放有产品,则消费者可以将 ......
线程

多线程学习第三篇

## 3、线程状态 线程五大状态: - **创建**状态:通过new创建线程 - **就绪**状态:通过start()启动线程进入就绪状态 - **阻塞**状态:通过CPU调配进入运行状态 - **运行**状态:在运行状态时,可以进行如sleep,wait等方法使线程进入**阻塞**状态 - **死 ......
线程

设计模式学习1 设计原则

# 设计原则 ## 1.开闭原则 **对扩展开放,修改关闭**。在程序需要扩展的时候,不能去修改原有代码,实现一个热插拔的效果。为了使程序的扩展性好,易于维护和升级 为了达到这样的效果,我们需要使用接口和抽象类 ## 2.里氏代换原则 **任何基类可以出现的地方,子类一定可以出现。**也就是子类继承 ......
设计模式 原则 模式

魔鬼冲刺学习笔记

$$\huge{\textbf{魔鬼冲刺} \quad \textbf{2023.8.31 - ?}}$$ 高二是大部分 OIer 的最后一段竞赛时光,这真是 “$One \ Last \ Olympiad$” 了。所以我们开始魔鬼冲刺了!这里就用来记录这段时期的一些收获,还有学到的知识。由于 [停 ......
魔鬼 笔记

《C和指针》学习笔记

# C和指针学习笔记 ## 前置条件 ### 1.1 配置环境 1. 下载vscode 2. 安装编译器:这里以MinGw-w64为例。 1. 下载MinGw-w64的安装包并解压。 2. 添加到系统环境 3. 编辑tasks.json(该文件负责项目的编译,如果需要同时编译多个文件,需要对该文件进 ......
指针 笔记

Nginx学习

## 发行版本 [Nginx开源版](https://nginx.org/):提供基础功能 [Nginx Plus商业版](https://www.nginx.com/):提供高级功能,如对微服务整合、云原生整合 [Openresty](https://openresty.org/):Nginx和L ......
Nginx

C/C++/Rust等底层软件开发应该学习哪些计算机知识

* 语言入门,循序渐进: * C语言: * CCF中学生计算机程序设计 入门/基础/提高 三册 * 阮一峰-网道: [C语言教程](https://wangdoc.com/clang/) * C程序设计语言:[ [美] Brian W. Kernighan / [美] Dennis M. Ritch ......
底层 软件开发 计算机 知识 软件

折半搜索 学习笔记

## 关于算法 折半搜索,又称 meet in the middle 算法。 顾名思义,就是将整个搜索的过程分成两个部分分别进行搜索,然后再将两个部分搜索出来的答案进行合并,得到最终的答案。 dfs 搜索算法一般都是指数级别的,那么我们假如每次 dfs 时都有两种决策,那么我们执行 dfs 算法的时 ......
笔记

莫队学习笔记(如何处理增量)

[题目传送门:序列](https://www.luogu.com.cn/problem/P3246) 考虑我们已经求出了区间 $[l,r]$ 的答案,现在要求 $[l,r+1]$ 的答案。 很明显增多的子序列有 $(l,r+1),(l+1,r+1)...(r+1,r+1)$。 考虑求出 $[l,r+ ......
增量 笔记

【学习笔记】二分图基础

**二分图与网络流基础(网络流待学)** 查看目录 [TOC] ## 前置知识: * tarjan * 强连通分量:有向图中几个点可以相互到达,就称这几个点是强连通分量。 * 点双连通分量: 删掉一个点后子图仍为强连通分量。 * 边双连通分量:删掉一条边子图仍为强连通分量。 * 奇环:指点的数量为奇 ......
基础 笔记

汇编进制学习

**进制解读** 任何一种进制都是完美的,都可以做计算,进制的符号由人来定义,普通的运算可以用查数解决。 `八进制2+3,从二开始往后移三个数 2*3,从二开始往后移动4个数,要想快速口算,需要记忆加法和乘法表。` **计算机中的进制** 在计算机中使用二进制,但是日常接触的汇编都是16进制,因为方 ......
进制

学习JavaScript的路径

学习JavaScript的路径可以按照以下步骤进行: 了解基本概念:首先学习JavaScript的基本概念,包括变量、数据类型、运算符、数组、对象、循环和条件语句等。可以通过阅读相关的教材、在线课程或者参考W3Schools和MDN文档等来学习。 学习控制DOM元素:学习如何使用JavaScript ......
JavaScript 路径

[算法学习笔记] 动态规划合集

动态规划本质上是 **状态的合并**。我们用一个或多个维度的数组来表示出题目所有的状态。在考虑压缩状态的时候想想压缩掉这一维,其他的维度可以表示题目所有的状态呢?会不会出现不该合并的合并到一起呢? 对于优化,我们一般先写出朴素状态转移方程,再考虑压缩状态,单调队列,线段树等优化。 对于一些套路性问题 ......
算法 笔记 动态

C++语言学习07

一、类型信息运算符 typeid 在C++中typeid可以获取数据的类型,但是需要加头文件 typeinfo find /usr/include -name typeinfo 1、typeid是运算符,执行运算符函数,执行的返回值类型是type_info 类类型对象 2、type_info中有个n ......
语言学习 语言

学习笔记1-指令级并行

指令级并行 1.概念 1.1.指令级并行(ILP)有两种实现方法: (1)依靠硬件来动态发现并实现并行; (2)依靠软件技术在编译时静态发现并行。 1.2.数据依赖与冒险 数据依赖(三种类型):数据依赖、名称依赖和控制依赖。 1.数据依赖:1)指令 i 生成的结果可能会被指令 j 用到。 2)指令 ......
指令 笔记

tensorrt学习(三)

继续整理tensorrt的学习资料,方便后续查看. (文章内容大部分摘取于网络资源) ## 1 int8量化 int8量化就是将网络的权重由float32类型缩放为int8类型,同时记录缩放的scale。为了尽可能的不丢失精度,需要采用标定图片来确定缩放的范围。 ### 1.1 int8量化原理 * ......
tensorrt

tensorrt学习(二)

继续整理tensorrt的学习资料,方便后续查看 ## 1. tensorrt插件 对于tensorrt不支持的算子,可以通过plugin插件的方式,自己实现。这里采用在pytorch中自定义一个算子,导出到onnx中,然后实现一个tensorrt plugin来解析这个自定义算子。 ### 1.1 ......
tensorrt

Python 潮流周刊#18:Flask、Streamlit、Polars 的学习教程

你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。标题取自其中三则分享,不代表全部内容都是该主题,特此声明。 本周刊由 **Python猫** 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容 ......
学习教程 Streamlit 周刊 潮流 教程

tensorrt学习(一)

整理下tensorrt学习资料,方便后续查找。(文章内容大部分摘取于网络资源) # 1. tensorrt介绍 安装: https://docs.nvidia.com/deeplearning/sdk/tensorrt-install-guide/index.html tensorrt python ......
tensorrt

Python初级学习20230902——字符串

# 字符串 ```python """ example05 - 字符串 1.转义问题 2.字符编码 Author: danlis Date: 2023/9/2 """ a = 'hello, world' # 和a一样的 b = "hello, world" # 一般长字符串,用三个单引号。三个双引 ......
字符串 字符 20230902 Python

超越平滑: 具有边异质判别的无监督图表示学习

# 超越平滑: 具有边异质判别的无监督图表示学习 **Title:** Beyond Smoothing: Unsupervised Graph Representation Learning&nbsp with Edge Heterophily Discriminating **Cite:** L ......
异质

[学习笔记] 莫队

# 一、普通莫队 莫队是一种基于分块的算法,由莫队提出(orz)。 莫队可以解决一类查询序列区间信息的题。 可以使用该算法的 **前提** 是维护的信息必须可以在 $O(1)$(如果用 map / set 可以带 $\log$,或者优化成 $O(1)$)内将 $[l, r]$ 的答案扩展到 $[l ......
笔记

Python初级学习20230902——元组

""" example04 - 初步学习Python 1.学习元组tuple 2.元组的应用 Author: danlis Date: 2023/9/2 """ # START1 学习元组tuple # 元组是不可变的容器* # str = (100) # 这实际上class 'int',所以如果需 ......
20230902 Python

虚拟机VMware与乌班图的安装 -- 正点原子嵌入式Linux学习

一、准备工作 1、虚拟机VMware的下载 官网下载地址 :Download VMware Workstation Pro 2、linux乌班图的下载 官网下载地址:下载Ubuntu桌面系统 | Ubuntu 二、虚拟机VMware的安装过程 1、点击第一步下载好的虚拟机安装文件,选择自定义,后点击 ......
原子 嵌入式 VMware Linux

8.28-9.3学习总结博客八:数据工程与系统部署

博客题目:学习总结八:数据工程与系统部署实践内容概要:了解数据工程的基本概念和核心技术,学习如何将学到的技能应用于实际项目中,并了解数据处理系统的设计和部署。学习资源:推荐的数据工程、系统部署和项目实践的教程、实践资源和学习资料。实践内容:通过针对实际项目的数据处理和系统部署任务,实践数据工程的技术 ......
数据 工程 系统 博客 8.28

Python初级学习20230901

# Python初级学习20230901 运算符 >优先级和结合性 左结合:从左往右进行计算(大部分运算符) 右结合:从右往左进行计算(赋值运算符,正负号,索引和切片) ## assert断言语句 ``` python a = 1 assert a == 1 # 后面可以不加 assert a == ......
20230901 Python

『学习笔记』狄利克雷生成函数

## 定义 一般地,对于一个函数 $f$,定义它的狄利克雷生成函数(简写为 DGF)为: $$\tilde{F}(x) = \sum _ {i \ge 1} ^ \infty \dfrac{f_i}{i^x}.$$ 即: $$\tilde{F}(x) = f_1 + \dfrac{f_2}{i^2} ......
函数 笔记

20用于深度学习训练和研究的数据集

数据集在计算机科学和数据科学中发挥着至关重要的作用。它们用于训练和评估机器学习模型,研究和开发新算法,改进数据质量,解决实际问题,推动科学研究,支持数据可视化,以及决策制定。数据集提供了丰富的信息,用于理解和应用数据,从而支持各种应用领域,包括医疗、金融、交通、社交媒体等。正确选择和处理数据集是确保 ......
深度 数据

笛卡尔树 学习笔记

# 笛卡尔树 学习笔记 ## 定义 笛卡尔树是一棵特殊的 BST,或者说特殊的堆,它既满足 BST 的性质又满足堆的性质。 一棵笛卡尔树的一个节点同时拥有两个权值,一个是 $id$,一个是 $key$,分别是 BST 和 堆 的权值,单看 $id$ 值它是一棵 BST,单看 $key$ 值他是一个堆 ......
笔记