【C++】Hash闭散列
目录
一、哈希的概念
1.1 哈希冲突
1.2 哈希函数
1.3 装载因子
二、闭散列
2.1 线性探测
2.2 Insert 插入
2.3 Find 查找
2.4 Erase删除
2.5 插入复杂类型
2.6 二次探测
三、源代码与测试用例
3.1 hash源代码
3.2 测试用例
一、哈希的概念
在前面学习了二叉搜索树、AVL树、红黑树之后,我们得知顺序结构以及平衡树中,元素关键码与其存储位置之间没有对应的关系,因此在查找一个元素时,必须经过关键码的多次比较。顺序查找的时间复杂度为 O(N),平衡树中为树的高度,即(logN),搜索的效率取决于搜索过程中元素的比较次数。
理想的搜索方法:可以不经过任何比较,一次直接从表中得到要搜索的元素。
如果构造一种存储结构,通过某种函数(hashFunc)使元素的存储位置与它的关键码之间能够建立一一映射的关系,那么在查找时通过该函数可以很快的找到该元素。
当向该结构中:
- 插入元素
根据待插入元素的关键码,以此函数计算出该元素的存储位置并按此位置进行存放。
- 搜索元素
对元素的关键码进行同样的计算,把求得的函数当作元素的存储位置,在结构中按此位置取元素进行比较,若关键码相等,则搜索成功。
该方法即为哈希(散列)方法,哈希方法中使用的转换函数称为哈希(散列)函数,构造出来的结构称为哈希表(hash Table)(或称散列表)
使用以上方法插入直接进行映射插入,搜索时不必进行关键码的比较,因为搜索速度非常快。
问题:按照上述哈希方式,向集合中插入元素44,会出现什么问题?
1.1 哈希冲突
对于两个数据元素的关键字,其 key1 != key2,但是存在 key1 % p == key2 % p,此时 key1 和key2 就会被映射到 hash Table 中相同的位置。
假设我们将需要存的数n,存的索引值 = n % 10
现在需要将20存入该表中,计算出的键值为0,但是该位置已经有数据了,即发生了哈希冲突.
此时:不同关键字通过相同的哈希函数计算处相同的哈希地址,该种现象称为哈希冲突或哈希碰撞。
1.2 哈希函数
引起哈希冲突的一个原因在于:哈希函数设计的不够合理。
哈希函数的设计原则:
- 哈希函数的定义域必须包括需要存储的全部关键码,而如果散列表允许有 m 个地址时,其值域必须在 0 到 m-1 之间。
- 哈希函数计算出来的地址能均匀的分布在整个空间中。
- 哈希函数设计应足够简单。
常见的两种哈希函数
1. 直接定址法
取关键字的某个线性函数为散列地址:hash(key) = A * Key + B
优点:简单、均匀
缺点:需要事先知道关键字的分布情况
使用场景:适合查找比较小且连续的情况。
题目举例:387. 字符串中的第一个唯一字符
2.除留余数法(常用)
设散列表中允许的地址数为 m ,取一个不大于 m ,但最接近或者等于 m 的质数 p 作为除数,按照哈希函数:hash(key) = key % p(p<= m),将关键码转化为哈希地址。
就是以下这种方法
1.3 装载因子
如果hash的插入,进行映射后如果找不到空位就要一直往后面检测查找空位,所以如果当哈希表中只有一个空位时,插入一个数据的时间复杂度很可能就变成了O(N),所以说再这种情况发生前我们就要对其进行扩容。
那什么情况下进行扩容呢?应该括多大呢?如果是除留余数法,那质数 p又应该是多少呢?
散列表的装载因子定义为:a = 填入表中的元素个数 / 散列表的长度
即。装载因子越小,冲突的概率越小,空间利用率低;装载因子越大,冲突的概率越大,空间利用率高。
而库中的做法是,装载因子如果大于0.7,就进行扩容。
二、闭散列
闭散列:也叫开放地址法,当发生哈希冲突时,如果哈希表未被装满,说明在哈希表中必然还有空位置,那么可以把 key 存放到冲突位置中的"下一个"空位置中去。
寻找下一个空位置方式有线性探测和二次探测,接下来我们结合理论并实现一下。
2.1 线性探测
线性探测:从发生冲突的位置开始,依次向后探测,直到寻找到下一个空位置即可。
结构定义:
首先我们定义结构,我们定义每个位置有三种状态{存在,空位,删除},一个位置要么是以及有数据了,要么是没有数据,没什么有一个删除呢?
如果出现下面这种情况,20在3的后面进行插入,将3删除后,20便无法查找到,所以我们会再添加一个删除状态,防止以下这种情况发生。
使用一个数组进行存储,其中每一个位置位HashDate类型,该类型中会记录当前位置的状态。再添加一个size变量,用于记录当前存储的有效数据个数。结构如下:
enum State {EMPTY,EXIST,DELETE}; //每个位置有三种状态template<class K,class V>
struct HashDate
{pair<K, V> _kv;State _state;
};template<class K,class V>
class HashTable
{
public://成员函数:
private:vector<HashDate<K, V>> _table;size_t _size=0;
};
2.2 Insert 插入
- 通过哈希函数(保留余数法)获取待插入元素在哈希表中的位置
- 如果该位置中没有元素则直接插入新元素,如果该位置中有元素发生哈希冲突,使用线性探测找到下一个空位置,插入新元素。
接下来有几个问题:
1. 确定质数p,我们应该取vector的size()还是capacity()作为质数?
使用size(),因为capacity()是vector开辟的总空间,超过size()的部分是不能直接使用的,只能使用size()以内的空间,而size要通过我们插入数据或resize进行改变。简而言之,vector中超过size(),小于capacity()的部分我们是不能直接访问的,尽管已经开辟。
2.如果线性探测一直探测到 i 下标超过hash_table.size(),我们应该如何做。
如果一直探测超过数组的下标,应该绕回数组的开始处,所以每次 i++ 后,我们可以继续进行取模,如果超过了size(),会自动从数组0下标处开始探测;当然,使用if判断 i 超过size(),超过就置0也是可以的。
3.当装载因子超过0.7之后,我们应该怎么做。
即_size / _table.size() >=7 时,我们要进行扩容,创建一个新哈希表,然后将旧表中的数据拷贝到新表中,此时我们可以复用 Insert 函数,因为新表是不存在扩容问题的,所以会使用 Insert 中插入逻辑的代码,然后将数据全部插入到新表中,最后我们将新表与旧表的进行swap一下,就将新表扩容指向的内容交换给了临时变量,临时变量调用析构函数,自动释放,这样,扩容问题就得到了解决。
代码如下:
bool Insert(const pair<K, V>& kv)
{//如果 size==0 或装载因子 >=0.7 进行扩容if (_table.size() == 0 || 10 * _size / _table.size() >= 7){size_t newSize = _table.size() == 0 ? 10 : _table.size() * 2;HashTable<K, V> newHash;newHash._table.resize(newSize);//将旧表中的数据拷贝到新表中 --- 复用Insert继续拷贝数据for (auto e : _table){if (e._state == EXIST){newHash.Insert(e._kv);}}//进行交换 newHash自动调用其析构函数_table.swap(newHash._table);}size_t hashi = kv.first % _table.size();while (_table[hashi]._state == EXIST) //如果存在数据就一直往后找{hashi++;//如果hashi++超过size(),需要绕回数组的开始hashi %= _table.size();}//找到位置,插入数据_table[hashi]._kv = kv;_table[hashi]._state = EXIST;++_size;return true;
}
注意,如果插入的是负数,会发生整形提升,int类型会转变为我们的size_t 类型,此时负数再进行取模,就可以得到一个合法的映射位置,也可以被查找的。
接下来还有一个问题,如果数据发生冗余怎么办。就是如果插入的是已经存在的值,应该如何处理呢?
2.3 Find 查找
所以我们可以在插入之前编写一个find函数,如果该数据存在,则不进行插入。
HashDate<K, V>* Find(const K& key)
{//判断表为空的情况if (_table.size() == 0)return nullptr;size_t hashi = key % _table.size();while (_table[hashi]._state != EMPTY){//如果找到key了,并且状态不是DELETEif (_table[hashi]._kv.first == key && _table[hashi]._state != DELETE){return &_table[hashi];}hashi++;//如果超过表的长度,则除以表的大小,让其回到表头。hashi %= _table.size();}return nullptr;
}
此时有一个问题, 我们的循环是_state !=EMPT,如果遍历重回到起点,这些遍历到的数据_state都为EMPTY,就可能导致死循环,所以我们还要保存起始位置的状态,如果重回起点则也返回false(当然,这是一种非常极端的情况,但是会出现)。
2.4 Erase删除
删除的思路非常简单,如果find查找到该值,直接将其对应的state改为DELETE即可。
bool Erase(const K& key)
{HashDate<K, V>* ret = Find(key);if (ret){ret->_state = DELETE;--_size;return true;}return false;
}
然后我们测试一下这插入、查找、删除这三个接口。
2.5 插入复杂类型
那如果我们想实现一个统计次数的哈希表,则 key 值是string类型的怎么办呢?string类型或字符串类型是无法被取模的。那再如果我们想插入一个自己定义的复杂类型呢?
我们先来看看STL库中是如何解决这个问题的。
所以我们要编写默认的hash取key的仿函数作为缺省参数。
在任何进行取模的地方我们要让key值调用默认的仿函数取出key值。
所以我们可以自定义编写将string类型(或其它复杂类型)转化为 size_t 类型的仿函数
struct HashFuncString
{size_t operator()(const string& key){size_t val = 0;for (auto ch : key)val += ch;return val;}
};
然后我们将测试代码跑起来:
void test_hash04_string()
{string arr[] = { "苹果","西瓜","菠萝","草莓","菠萝","草莓" ,"菠萝","草莓" , "西瓜", "菠萝", "草莓", "西瓜", "菠萝", "草莓","苹果" };HashTable<string,int, HashFuncString> countHT;for (auto& str : arr){auto ptr = countHT.Find(str);if (ptr)ptr->_kv.second++;elsecountHT.Insert({ str,1 });}countHT.Print();
}
但是在库中的unordered_map并不需要我们自己传入仿函数,因为string是一个挺常见的类型,库中使用了模板的特化,对string类型进行了特殊处理,我们接下来也将其进行改动为特化的形式。
template<>
struct HashFunc<string>
{size_t operator()(const string& key){size_t val = 0;for (auto ch : key)val += ch;return val;}
};
此时不传入自定义的仿函数,一样可以成功运行:
其实,我们模拟实现的string->int的仿函数写的并不规范,因为key值是唯一的,如果出现以下这种情况,即使key值是不同的,但是通过仿函数计算后的映射却是相同的。比如:
所以,我们要对字符串的Hash函数进行特殊处理,这里有一篇博客进行了详细的讲解:字符串Hash函数对比,这里我就直接使用(BKDR)的规则进行改写了:
template<>
struct HashFunc<string>
{size_t operator()(const string& key){size_t val = 0;for (auto ch : key)val = val * 131 + ch;return val;}
};
线性探测就实现完了,接下来就是改造为二次探测的实现:
2.6 二次探测
二次探测不是指探测两次,而是 i 的指数方进行探测。
如下是使用线性探测和二次探测插入同一组数据的插入结果,如下:
然后我们在线性探测的方式上进行改动:
三、源代码与测试用例
3.1 hash源代码
enum State { EMPTY, EXIST, DELETE }; //每个位置有三种状态template<class K, class V>
struct HashDate
{pair<K, V> _kv;State _state= EMPTY;
};template<class K>
struct HashFunc
{size_t operator()(const K& key){return (size_t)key;}
};template<>
struct HashFunc<string>
{size_t operator()(const string& key){size_t val = 0;for (auto ch : key)val = val * 131 + ch;return val;}
};template<class K, class V,class Hash=HashFunc<K>>
class HashTable
{
public:bool Insert(const pair<K, V>& kv){//如果表中已经存在该数据if (Find(kv.first)) return false;//如果 size==0 或装载因子 >=0.7 进行扩容if (_table.size() == 0 || 10 * _size / _table.size() >= 7){size_t newSize = _table.size() == 0 ? 10 : _table.size() * 2;HashTable<K, V, Hash> newHash;newHash._table.resize(newSize);//将旧表中的数据拷贝到新表中 --- 复用Insert继续拷贝数据for (auto e : _table){if (e._state == EXIST){newHash.Insert(e._kv);}}//进行交换 newHash自动调用其析构函数_table.swap(newHash._table);}Hash hash;size_t hashi = hash(kv.first) % _table.size();while (_table[hashi]._state == EXIST) //如果存在数据就一直往后找{hashi++;//如果hashi++超过size(),需要绕回数组的开始hashi %= _table.size();}//找到位置,插入数据_table[hashi]._kv = kv;_table[hashi]._state = EXIST;++_size;return true;}HashDate<K,V>* Find(const K& key){//判断表为空的情况if (_table.size() == 0)return nullptr;Hash hash;size_t hashi = hash(key) % _table.size();while (_table[hashi]._state != EMPTY){//如果找到key了,并且状态不是DELETEif (_table[hashi]._kv.first == key && _table[hashi]._state!=DELETE){return &_table[hashi];}hashi++;//如果超过表的长度,则除以表的大小,让其回到表头。hashi %= _table.size();}return nullptr;}bool Erase(const K& key){HashDate<K, V>* ret = Find(key);if (ret){ret->_state = DELETE;--_size;return true;}return false;}void Print(){for(int i=0;i< _table.size();i++){if (_table[i]._state == EXIST)cout <<"i:" <<i<<" [" << _table[i]._kv.first << " " << _table[i]._kv.second <<"]" << endl;}}private:vector<HashDate<K, V>> _table;size_t _size=0;
};
3.2 测试用例
void test_hash01()
{HashTable<int, int> Hash;int a[] = { 1,11,4,15,26,7};for (auto e : a){Hash.Insert(make_pair(e, e));}Hash.Print();cout << endl;
}
void test_hash02()
{HashTable<int, int> Hash;int a[] = { 1,11,4,15,26,7,13,5,34,9 };for (auto e : a){Hash.Insert(make_pair(e, e));}Hash.Print();cout << endl;
}void test_hash03()
{HashTable<int, int> Hash;int a[] = { 1,11,4,15,26,7,13,5,34,9 };for (auto e : a){Hash.Insert(make_pair(e, e));}Hash.Print();cout << endl<<"find:"<<endl;cout << (Hash.Find(11)->_kv).first << endl;cout << (Hash.Find(4)->_kv).first << endl;cout << (Hash.Find(5)->_kv).first << endl;cout << (Hash.Find(34)->_kv).first << endl;cout << "Erase:" << endl;Hash.Erase(11);cout << Hash.Find(11) << endl;
}void test_hash04_string()
{string arr[] = { "苹果","西瓜","菠萝","草莓","菠萝","草莓" ,"菠萝","草莓" , "西瓜", "菠萝", "草莓", "西瓜", "菠萝", "草莓","苹果" };HashTable<string,int> countHT;for (auto& str : arr){auto ptr = countHT.Find(str);if (ptr)ptr->_kv.second++;elsecountHT.Insert({ str,1 });}countHT.Print();
}void test_hash05_string()
{HashFunc<string> hash;cout << hash({ "abc" }) << endl;cout << hash({ "bac" }) << endl;cout << hash({ "cba" }) << endl;cout << hash({ "bbb" }) << endl;
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-4503589.html
如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!
虚拟机 puppet 安装部署
(1)准备三台centos7虚拟机,并做好基础配置。 用途IP部署的服务HOSTNAMEpuppetmaster192.168.52.130puppet-mastermaster.cluster.compuppetagent192.168.52.131puppetminion1.cluster.compuppetagent192.168.52.132puppetminion2.cluster.co…...

数据结构之双端队列
文章目录前言一、双端队列模型二、双端队列的实现三、在前面插入元素四、在后面插入元素五、检查队列是否为空六、检查队列是否已满总结前言 双端队列有两个端部,首部和尾部,并且项在集合中保持不变。 双端队不同的地方是添加和删除项是非限制性的。可以…...

coco数据集大小分类_Microsoft COCO 数据集
本篇博客主要以介绍MS COCO数据集为目标,分为3个部分:COCO介绍,数据集分类和COCO展示。本人主要下载了其2014年版本的数据,一共有20G左右的图片和500M左右的标签文件。标签文件标记了每个segmentation的像素精确位置bounding box的…...

Word处理控件Aspose.Words功能演示:从 C# 中的 Word 文档中提取图像
图像在说明 Word 文档中的关键信息方面发挥着重要作用。此外,它们使文档更具吸引力并改善其呈现方式。作为一名程序员,您可能会得到一份工作来提取嵌入在 Word DOCX 或 DOC 文档中的图像。为此,本文介绍了如何使用 C# 以编程方式从 Word 文档…...

Web大学生网页作业成品 基于HTML+CSS+JavaScript (刘德华9页 )
⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材,DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 个人博客网站 | 个人主页介绍 | 个人简介 | 个人博客设计制作 | 等网站的设计与制作 | 大学生个人HTML网页设计作品 | HTML期末大学生网页设计作业…...

聊聊身边的嵌入式,自拍神器自拍杆
曾几何时,自拍杆风靡世界,火当然是有原因的,这么一个小装备,极大的满足了人们爱拍照的需求,方便好用、经济实惠。恰巧我手上也有一个,收起来时很小、不占地方打开后可随意调节拍照同时它有个隐藏式三脚架功…...

凭借阿里爆款Spring Security笔记,走上大厂996的人生巅峰
Spring Security Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。由于它是Spring生态系统中的一员,因此它伴随着整个Spring生态系统不断修正、升级,在spring boot项目中加入springsecurity更是十分简…...

软件测试常问面试题【二】
软件测试常问面试题【二】 1、APP性能测试遇到什么bug没有? 性能bug:卡顿、ANR、内存泄漏 2、什么是兼容性测试?兼容性测试要测试哪些方面? 主要包括: 不同操作系统版本的兼容(Android的版本有ÿ…...

【职场菜鸟】工作总结与问题解决
目录 目录 工作总结 一、Linux和java环境相关 二、git操作 三、数据表操作 四、java语言学习 五、实际开发相关 六、基础原理探索 遇到的问题 一、postman测试 二、java语言方面问题 三、实际开发问题 工作总结 一、Linux和java环境相关 Linux常用命令 echo find…...

软件构造笔记1
多维软件视图 按阶段划分:构造时/运行时视图按动态性划分:时刻/阶段视图按构造对象的层次划分:代码/构件视图软件建设的五大关键质量目标可理解性可维护性和适应性可重用性健壮性高效性“软件”一词最初是由艾伦图灵提出的软件程序Data文档软…...

敏捷开发总结
一、敏捷开发是一种开发方式敏捷开发,英文是Agile Development,是一种以人为核心、迭代、循序渐进的开发方式,是一种软件开发的流程。它会指导开发人员用规定的环节去一步一步完成项目的开发。由于它采用迭代式开发,所以它主要的驱…...

docker 使用docker-compose启动容器教程
1、安装docker-compose #1、下载docker-compose cd /root && wget https://ghproxy.com/https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64#2、将dokcer-compose 移动到指定目录下 mv docker-compose-linux-x86_64 /usr/loca…...

一、应用层分析
目录 一、应用层协议原理 二、Web和Http 一、应用层协议原理 1、多个端系统的程序如何通信:使用的基本对象是进程,而不是程序。在应用层面,通信的对象是报文。 2、两个进程之间相互发送报文,使用的是套接字软件接口࿰…...

MSCOCO2017数据集下载
这个数据集我是找了很久,下了很久才下下来的。 链接:https://www.floydhub.com/walter1218/datasets/mscoco/1 本人速度5M/s...

寒假集训一期总结(一)–––思维训练
目录 思维训练 走方格 解题思路 参考代码 最短曼哈顿距离 编辑 解题思路 参考代码 酒厂选址 解题思路 参考代码 雪地足迹Tracks in the Snow 解题思路 参考代码 一个星期没有更博客了…这一个星期,去学校信竞集训的我收获颇丰,下面就是我的还加集训总结 思…...

【异常】记一次前端因资源无法加载导致白屏异常问题
一、背景 自从运维同事强烈要求前端的环境要使用多套的,参考文章 【项目】参考若依的前端框架去多环境 于是一番捣鼓与改造之后,看似已经顺利了 但运维说,前端还是有问题,需要他帮我改下,于是改了如下内容 什么嘛&a…...

真实面试题积累
线程池的作用 为什么不使用自带线程池; 线程池,--其实就是一个 容纳多个线程的容器 ,其中的线程可以反复使用,省去了频繁创建线程对象的操作 ,--无需反复创建线程而消耗过多资源。 创建销毁线程是一个非常消耗性能的。…...

matlab机电控制系统技术与应用,MATLAB机电控制系统技术与应用:张秀峰 : 工业技术 :机械仪表武器 :机械、仪表
导语《MATLAB机电控制系统技术与应用》(作者张秀峰)的内容编排和目录组织十分讲究,使得读者可快速掌握机电控制从仿真到工程实践的整个过程。本书简要介绍相关的理论知识,重点介绍实际应用,并给出大量的相关实例。书中的实例是作者多年学习和…...

2020年测试面试经历以及面试题大全
20200816搭建测试环境 1.Elipse的打包工具-Xftp软件:手动打包放到服务器上面 xftp如何连接服务器?操作手册(打包之后放到服务器下面的webapp里面,然后在浏览器里面访问地址) 2.主流的自动化测试:python 20200817 接口测试工具PostMan 1.PostMan可以做…...

docker安装redis并以配置文件方式启动
------------------------------- 更新 最近发现服务器被挖矿病毒入侵了 很有可能是因为redis没有设置密码的原因! ------------------------------- 1.获取redis镜像 docker pull redis 指定版本号: docker pull redis:4.0.9 不加版本号默认获取最新…...

盘点golang中的开发神器
本文已收录 https://github.com/lkxiaolou/lkxiaolou 欢迎star。 在Java中,我们用Junit做单元测试,用JMH做性能基准测试(benchmark),用async-profiler剖析cpu性能,用jstack、jmap、arthas等来排查问题。 作…...

cocoeval函数使用
文章目录背景1、代码2、文件下载背景 coco数据集在目标检测任务中经常用到,而coco并不像voc那样直白。尤其在评估方法方面。因此,本文记录下cocoeval函数使用,记性不好。 1、代码 from pycocotools.coco import COCO from pycocotools.cocoe…...

Flutter | 使用 fvm 报错 Can‘t load Kernel binary: Invalid SDK hash.
不管是执行 fvm list 还是 fvm --version,都报错: Cant load Kernel binary: Invalid SDK hash.最后的解决方案是执行: dart pub global activate fvm...

【算法】贪心算法 背包问题 python
博主自己手撸代码,若有错误,感谢指出 直接上代码 目录 0 贪心算法 1 代码 2 结果分析 0 贪心算法 贪心算法是一个只关注眼前利益的算法,看起来比较短视,没有长远眼光,但在某些时候会取得比较好的收益。 1 代码 …...

Docker安装ElasticSearch和Kibana
文章目录1. 安装docker2. 拉取elasticsearch镜像3. 启动elasticsearch3.1 目录结构4. 验证elasticsearch是否启动成功5. 插件安装5.1 安装IK分词器5.2 分词器使用验证6. kibana安装6.1 docker安装kibana6.2 启动kibana7、elasticsearch-head安装8、常见问题处理注意:…...

C++对video2image-python的重写和扩展
一. video2image C 编写,是对 video2image-python 的重写和扩展。 二. 开发软件 Visual Studio 2019 Qt Designer 5.14.2 三. 课题要求 面向对象,利用qt特性单元测试验证 四. 主要流程 1. 整体思路 定义类video2imageQt继承自QMainWindow&#…...

综述:目标检测中的多尺度检测方法
传统卷积网络通常采用从上到下的单行结构。对于大物体而言,其语义信息将出现在较深的特征图中;而对于小物体,其语义信息出现在较浅的特征图中,随着网络的加深,其细节信息可能会完全消失。 多尺度检测也是当今物体检测领…...

服务降级设计
实际系统运维中会出现某点的流量高峰,该时间有些可以预计,如双十一,有些不能预计,如某明星大爆料 等等,那么对着此类情况加设备等不能满足要求或者不能立刻满足邀请的时候,就需要对服务进行降级操作。...

2021年中国大数据产业白皮书(附下载)
联合实验室是由 中国大数据网 与 北京龙盾数据有限公司 于2021年9月共同设立,是为了适应"十四五"加快数字化发展,打造数字经济新优势,推进"产业数字化"和"数字产业化"的发展需要,积极探索符合市场需…...

架构 | 新一代分布式数据库架构详解
分布式数据库技术发展多年,但是在应用、业务的驱动下,分布式数据库的架构一直在不断发展和演进。开源金融级分布式数据库SequoiaDB,经过6年的研发,坚持从零开始打造数据库核心引擎。在技术探索中,选择了更适合云数据库…...

RabbitMQ--扩展--11--均衡负载
RabbitMQ–扩展–11–均衡负载 1、场景 面对大量业务访问、高并发请求,可以使用高性能的服务器来提升RabbitMQ服务的负载能力。当单机容量达到极限时,可以采取集群的策略来对负载能力做进一步的提升,但这里还存在一个负载不均衡的问题。 举…...

计算机考研数据结构算法模板
计算机考研数据结构算法模板 前言 临近考研,想给考研党们分享一些比较通用的算法模板,让复习更高效一点。如果备考时间足够长,备考人应该有大量时间刷大量习题,会有自己总结的算法模板,笔者文章参考了王道考研系列教…...

2023考研王道数据结构知识梳理
写在前面: 本系列参考书目: 王道 《2023数据结构考研复习指导》,邓俊辉《数据结构C描述版》,严蔚敏《数据结构C语言描述版》 该系列会给出C版本与C语言版本的核心代码与完整程序,请读者放心食用。,有关C与…...

APP测试这4款工具操作方法你一定要会!
01、GT工具做性能测试的操作方法 打开手机中的GT App工具。 在GT工具主界面选择被测APP并勾选需要关注的性能指标如(CPU、内存、流量)。 点击启动按钮打开被测app 返回GT工具界面点击参数进入参数设置界面。点击编辑按钮选择需要关注的性能指标选项。…...

【python绘图】Matplotlib绘图及设置(使用python制图)
目录 一、初识matplotlib.pyplot 1.绘制图像 2.设置图片大小 3.保存图片文件 4.设置X,Y轴刻度范围 自定义刻度内容 5.添加描述信息(标题、轴标签) 6.设置显示中文(导入字体模块) 7.绘制网格 绘制一个温度随时…...

比较爽的导航查询 功能 - SqlSugar ORM
1、导航查询特点 作用:主要处理主对象里面有子对象这种层级关系查询 1.1 无外键开箱就用 其它ORM导航查询 需要 各种配置或者外键,而SqlSugar则开箱就用,无外键,只需配置特性和主键就能使用 1.2 高性能优 查询 性能非常强悍 支持大数据分页导航查询 3.3 语法超级爽 注意:…...

【专栏必读】王道考研408数据结构万字笔记、题目题型总结、注意事项、目录导航和思维导图
其他科目导航 【专栏必读】王道考研408计算机组成原理万字笔记(从学生角度辅助大家理解):各章节导航及思维导图 【专栏必读】王道考研408操作系统万字笔记(从学生角度辅助大家理解):各章节导航及思维导图 …...

分布式mysql分库分表_有了分布式数据库,是不是就不需要分库分表了?
还需要,只是变得更隐蔽了。分库分表或者 sharding 的本质是摩尔定律的失效,单一节点的计算能力无法管理所有的应用状态。由于在多个节点上维护同一份状态并且保证彼此一致的成本太高,所以需要设计一组策略,把应用数据分成若干份&a…...

考研数据结构编程题
考研数据结构编程题(附完整代码)1、给定一个含n(n≥1)个整数的数组,请设计一个在时间上尽可能高效的算法,找出数组中未出现的最小正整数。例如,数组{-5,3,2,3}中未出现的最小正整数是…...

css经典布局之三栏布局(双飞翼,圣杯)!!!
双飞翼布局和圣杯布局两者实现效果相同,都是为了实现一个两侧宽度固定而中间自适应的三栏布局 如图: 要实现一个三列布局的具体要求为: header和footer各自占领屏幕所有宽度,高度固定。中间的container是一个三栏布局。三栏布局…...

Maven的环境搭建以及Maven在IDEA中的配置
Maven能够自动导入和配置jar包 1.1 Maven 项目架构管理工具 Maven的核心思想:约定大于配置 有约束,不要去违反 Maven会规定好如何去编写代码,必须要按照这个规范来 1.2 下载安装Maven https://maven.apache.org/download.cgi# 1.3 配…...

管理bug的工具
一、国内的bug管理软件: 1、禅道 禅道是第一款国产开源项目管理软件。它的核心管理思想基于敏捷方法scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能。在一个软件中就…...

分布式数据库-最终案例-ShardingJDBC
1:新建一个springboot工程 2:创建两个数据库order1,order2,分别创建t_address表如下: DROP TABLE IF EXISTS t_address; CREATE TABLE t_address (id bigint(20) NOT NULL,code varchar(64) DEFAULT NULL COMMENT 编…...

基于2D Object Detection的目标几何中心三维位置估计(C++)
文章目录 介绍前置知识三维位置估计订阅内参订阅对齐后的深度图并进行后处理源码介绍 这篇博客将简单讲解下如何利用二维目标检测方法和RGBD数据来获取感兴趣目标的几何中心三位位置结果。 前置知识 为了让博客内容显得简洁些,这里不再介绍前置知识,包括: 2D Object Dete…...

cloudera manager安装
目录 cdh 官网下载地址 下载cloudera manager 整体架构 环境配置 1. 修改主机名称 2. 进行秘钥认证 3. 进行时间同步 4. jdk 安装 5. mysql安装 6.关闭防火墙 7.关闭selinux a.临时关闭: b.永久关闭: 8.下载第三方包 9.创建进程用户clo…...

【建议收藏】数据结构考研常用的8种排序算法
排序算法1.冒泡排序2.插入排序3.简单选择排序4.希尔排序5.快速排序6.归并排序7.基数排序8.堆排序9.复杂度分析和稳定性最近在准备考研,正好在学习数据结构的排序,发现下面这位大佬总结的很详细,不过是用java,我得用c来考试&#x…...

考研数据结构汇总
仅供参考!!! 必背知识点 数据结构 是相互之间存在一种或多种特定关系的数据元素的集合 数据结构的三要素: 逻辑结构,存储结构,数据的运算(定义(逻辑结构的,运算的功能…...

杀死NetKeeper进程树
%acquire administrator privilege% echo off cd /d "%~dp0" cacls.exe "%SystemDrive%\System Volume Information" >nul 2>nul if %errorlevel%0 goto Admin if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs"...

不愧是Alibaba技术官,HashMap源码解析(1)
public HashMap(Map<? extends K, ? extends V> m) { this.loadFactor DEFAULT_LOAD_FACTOR;putMapEntries(m, false);} 复制代码 ### 查询/** 返回指定 key 所对应的 value 值,当不存在指定的 key 时,返回 null。 当返回 null 的时候并不表…...

MySQL优化和原理分析课程—进阶课程 面试必看系列
——/MySQL原理和调优/ ├──视频 | ├──00-MySQL优化和原理分析课程介绍.mp4 83.35M | ├──01-为什么要使用索引.mp4 138.84M | ├──02-索引是什么.mp4 176.02M | ├──03-索引存放的位置.mp4 187.68M | ├──04-索引的分类及创建.mp4 230.89M | ├──05-数据结构之…...

设计模式-创建型设计模式-工厂方法模式学习
现象: 设计模式-创建型设计模式-工厂方法模式学习 实现: 各种产品有专门的工厂生产,用户只关心工厂不在关系具体的产品生产过程 工厂方法模式是对简单工厂模式的进一步抽象化 相比简单工厂模式而言 工厂方法模式的灵活性增强,对于…...

数据结构考研复试、面试 ——常见提问总结
说明:只有题目 可以看着回答 链接:答案 逻辑结构与物理结构的区别 算法的特点 常见的数据结构 单链表结构和顺序存储结构的区别 线性链表 数组和链表的区别 判断疫个链表是否有环,如何找到这个环 单链表和双链表的区别 头指针和头结点的区别 简…...

matlab 矩阵 矢量场,Matlab将矢量转换为矩阵(Matlab turning vectors into a matrix)
Matlab将矢量转换为矩阵(Matlab turning vectors into a matrix)我不确切地知道如何用这个问题来表达,但我有3个列向量,我试图将它们变成矩阵,这样矩阵基本上看起来像[v1 v2 v2]其中每个向量的长度明显大于1。有自动方法吗?现在&a…...

python画图-python绘图入门(完整版)
1. 画一个简单的图形 2. 在一张图纸里绘制多个图形 3. 更多设置 3.1 设置 figure 3.2 设置标题 3.3 设置坐标轴 3.4 设置 label 和 legend 3.5 添加注释 4. 使用子图 5. 常见的图形 5.1 散点图 5.2 柱状图 6. 中文乱码解决 以下简述下各部分要点: 1. 画一个简单的图…...

学习总结4.9 Linux文件/目录特殊属性
Linux中文件/目录常见的属性的所属者、所属组、创建时间和最新修改时间等外,还存在些隐藏属性,这些隐藏属性在保护系统文件的安全性上非常重要。 Linux使用lsattr和chattr两个命令查看和修改文件/目录的特殊属性。 接下让我们详细的学习lsattr和chattr…...

MySQL 修改根据一个字段修改另外一张表字段
UPDATE data_base_a A, data_base_b B SET A.columnA B.columnB WHERE A.processinstanceid B.PROC_INST_ID_ AND B.NAME_ approveUserName; 数据库 表A 和B,将B中的 columnB 字段赋值给 A 表中的 columnA 字段,where 条件是A中的某个字段等…...

html网页如何导入word,怎么把网页导入word
回答:参考下面做法:第一步:首先,找到需要复制的表格所在的网页。第二步:尝试对表格进行全选,并单击鼠标右键进行复制操作,这种表格其实只是视觉上的表格,边框线是不能被复制的。第三…...

generator函数与async/await
理解async函数就要先理解generator函数,因为async就是Generator函数的语法糖 Generator 函数 Generator 函数是 ES6 提供的一种异步编程解决方案,可以先理解为一个状态机,封装了多个内部状态,执行Generator函数返回一个遍历器对象,通过遍历器对象,可以依次遍历 Generator…...

Terraform 基础 云计算概述 基础设施即代码
云计算概述 lac基础设施即代码 什么是Terraform 在开始学习Terraform之前,要了解这个工具到底解决了什么问题 了解背景基础设施变化 企业上云,可提高资源配置效率、降低信息化建设成本(说白了就是用上云计算了) 比较大型的企业都…...

实施行政审批流程系统程组件的经验总结,规范化电子化流程管理(有点儿长,准备好茶叶)...
为什么80%的码农都做不了架构师?>>> 学语法,学技巧,学开发,这些其实都是为了能开发出通用产品,然后为人民服务,促进社会发展,减少重复劳动,创造价值。 当对某个语法&am…...

茶叶行业网站的盈利模式探讨
转者语: 茶叶行业是特殊的行业,不能照办其他行业的网站的模式,而要根据其特殊性有针对性对现有模式进行增删和整合,才能走出一条行业网站的创新成功之路,希望对其他行业的人士也会有所启发。 茶叶行业网站的盈利模式探讨2008-9-15 11:14:49 马连道茶网信息中心 占…...

电大计算机西方经济学考试题库,2011电大西方经济学网上作业1.2.3全部答案
2011电大西方经济学网上作业测试一1.稀缺性问题( ) 存在于所有经济中2.生产可能性曲线上的任何一个组合都表明( )3. 位于生产可能线以内的任何一点表示( )4. 微观经济学的中心理论是( )5. 微观经济学要解决的问题是( )价格理论 资源配置资源利用国民收入决定理论存量 没有闲置资…...

PHP茶叶商城系统论文毕业设计-附源码211121
摘 要 随着Internet的使用越来越广泛,在传统的商业模式中,对于茶叶等商品,人们习惯于到各种商家店铺购买。然而在快节奏的新时代中,人们不一定能为购买茶叶腾出时间,更不会耐心挑选自己想要的茶叶。所以设计一个茶叶商…...

茶叶的等级标准——跨行业学习
写本文的目的,不是为了讲如何鉴赏茶叶,而是为了学习茶叶的鉴赏标准,然后完善广告评定的标准。行业虽有不同,精髓相同。共同的纽带——用户体验 从武夷山回来,带回来大红袍。虽然网上一致说,不能和导游一起买…...

茶叶蛋成新一代炫富神器 求婚女神必备
网友将茶叶蛋PS成鸽子蛋钻戒 茶叶蛋钻戒闪瞎眼 茶叶蛋成向女神求婚必备神器 台湾电视节目称“大陆人民吃不起茶叶蛋” 随着台湾反服贸风波持续发酵,台湾一档讽刺“大陆人民吃不起茶叶蛋”、“大陆产妇不坐月子”、“台湾人在深圳火车站吃泡面引起围观”的电视节目再…...

【原创】基于Jsp+Servlet的茶叶商城(在线商城毕业设计源代码)
项目类型:JavaWeb源码 用户类型:2个角色(管理员用户) 主要技术:JspServ;etMySQLBootstrap 开发工具:Eclipse/Idea均可使用,有两个不同的版本 数据库:MySQL 数据库表:11张…...

茶叶实体店怎么引流?
引流:一说起喝茶这件事,很多人就会觉得这是老年人的专属,是老有所乐的活动之一。你可以发现去茶馆喝茶的大多数是上了年纪的人,几乎不见年轻人的身影。其实饮茶不仅是老年人的专属,年轻人也越来越喜欢这种饮品了。 那我…...

word文档中找不到服务器,【在WORD文件中插入excel表格,编辑保存后重新打开word文件并双击excel时提示“找不到服务器应用程序、源文件】excel整个表格不见了...
为什么PPT插入EXCEL表格时显示无法找到服务器应用程序这是由于excel或者ppt只能兼容。低版本的ppt和excel是无法打版本excel插入的表格的。解决如下:1.新建一个文本,将后缀名更改为reg。2.用记事本打开,填写一下内容:Windows Regi…...

解决IIS中无法运行aspx文件,提示:服务器应用程序不可用
引起这个的原因大概是现安装了.Net Framework后装的IIS导致.Net没有在IIS里注册。 从.net命令行工具里运行 aspnet_regIIS /i 就可以了(或者在类似下面的目录:C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/aspnet_regiis.exe -i)即可 不过注意: 要先卸…...

相机镜头工作原理图解
本文目录 (一)机身(二)关于镜头一、如何平衡机身与镜头的预算二、镜头的作用三、镜头的组成部分四、关于焦距 什么是焦距?为什么焦距很重要?五、变焦与定焦镜头六、光圈及最大光圈 光圈如何影响镜头&#…...
相机镜头选取
1、物距、像距、焦距之间的关系 认为物距远远大于像距和焦距,近似认为焦距 f 等于相距 v,都以焦距 f 作为计算 2、镜头的焦距(f )、物距(u)、CCD芯片尺寸、物体尺寸、CCD像元尺寸与设计要求分辨率(设计要达到的指标&a…...

机器视觉-相机镜头光源介绍及选型-8.镜头选型
镜头选型 1.1.选择依据: 根据物体大小(视野),物距,精度确定相机CCD靶面尺寸;从而计算出焦距,放大率; 然后根据分辩率,对比度,景深,光圈,接口畸变允许范围等确定型号。 1.2.选择步骤: (1) 根据精度确定相机最大CCD靶面尺寸 (2) 选择…...

机器视觉——入门基础(三)——相机镜头选型
目录 相机选型 分辨率、快门、帧率、色彩、靶面、接口 镜头选型 分辨率、靶面、焦距、接口、光圈畸变工作距离 常用计算示例 相机选型 分辨率、快门、帧率、色彩、靶面、接口 镜头选型 分辨率、靶面、焦距、接口、光圈畸变工作距离 常用计算示例 1. 面阵相机和镜头选型 已…...

canon相机镜头协议
这段时间一直在搞canon相机与镜头之间的协议,目前工作算是有一部分结果,基本功能使用起来没啥问题,能够正常的对焦,拍照了。今天上午测试了下EF 50mm 1:1.8 II镜头的工作电流,5V 23.4mA,比我想象中大&#…...

Jetson Xavier NX设备上利用opencv进行多海康摄像头的捕获的部署方法
Gstreamer GStreamer的程序通过连接数字媒体处理的元素注入管道(pipeline)。每个元素是由一个插件提供 。 元素可组合为箱(bins),箱可以进一步聚合,从而形成架构图。下图是一个例子一个过滤器图表 。 元素…...

调试海康usb摄像头错误记录
调试海康usb摄像头错误记录 所用代码如下,代码很简单,打开摄像头,获取视频流,从视频流中截取一帧按键’s’保存. 取名:capture.py import cv2 import numpy as np import time cap0 cv2.VideoCapture(0…...

海康产品交流之我见
本文纯粹是交作业。 1. 第一印象 上周参加了海康产品的两次培训交流,一次是安防相机系列、一次是工业相机系列。本次交流给人的第一印象就是,海康的产品真多!从非智能、轻智能到泛智能再到合智能,从安防相机到工业相机ÿ…...

10 海康视觉平台VisionMaster 上手系列:硬件知识介绍
硬件知识,不属于VisionMaster应用。属于机器视觉应用。 机器视觉硬件: 1,相机。 2,镜头。 3,光源及控制器。 4,主机。(含采集卡) 相机我们一般就看这些参数:&#x…...

python 调用海康工业相机图像获取方式之主动取流( getimagebuffer )并用 opencv 显示
系列文章目录 第一章 python调用海康工业相机并用opencv显示(整体实现) 第二章 python 调用海康工业相机图像获取方式之回调取流并用 opencv 显示 第三章 python 调用海康工业相机图像获取方式之主动取流(getoneframetimeout )…...

python 调用海康工业相机图像获取方式之回调取流并用 opencv 显示
系列文章目录 第一章 python调用海康工业相机并用opencv显示(整体实现) 第二章 python 调用海康工业相机图像获取方式之回调取流并用 opencv 显示 第三章 python 调用海康工业相机图像获取方式之主动取流(getoneframetimeout )…...

树莓派4b使用记录(一):在树莓派4b使用python-opencv打开海康工业相机及遇到的问题与解决方法
** 树莓派4b使用记录(一):在树莓派4b使用python-opencv打开海康工业相机及遇到的问题与解决方法 ** 一、在树莓派上安装海康工业机器人的MVS软件(Linux版本) 海康工业机器人软件下载地址:[https://www.hikrobotics.com/cn/mac…...

【系列03】方法的学习 方法重载 命令行传参 递归 简单计算机 [有目录]
方法的学习 什么是方法 方法是解决一类问题的步骤的有序组合包含于类或者对象之中方法在程序中被创建,在其他地方被引用 就比如输出方法如:System.out.println(); 就是被封装好的方法 方法设计原则:一个方法完成一个功能,利于后期扩展 [原子性] 使用方法: public class D…...

《外语学习的真实方法及误区》读后感
外语学习的真实方法及误区一篇非常好的文章,不看的话,我估计又开始记单词了。呵呵我的英语水平最高达到的是准四级的水平。阶段一(三个月):我下载了”罗塞达石碑“,接下来要训练的是要能听懂文章࿰…...

外语学习的真实方法及误区的笔记
多听各地人的口音,并进行比对训练 用英文思维,用英文想事儿 条件反射,思维和语言交流时,图象确实在参与,被称为“MIF” (mental image flash) 语言获得不是靠记忆 关键是提供可理解输入条件外语…...
读《双螺旋》
一本科普读物。重大事件印象记。是作者以自己的回忆来写的。多有个人色彩参与其中,历史的事谁又说的清呢。不过 DNA 结构的发现过程到是值得一看的。双螺旋-发现DNA结构的故事(美)James.D.Watson.刘望夷译沃森和克里克于 1953年提出的 DNA 双螺旋结构。1951 ~ 1953 …...

外语学习的真实方法与误区18
末世圣徒耶稣基督末世圣徒会The Church of Jesus Christ of Latter-daySaints,是基督教的一个特殊的门派,教徒们称自己为末世圣徒,简称LDS。该教会的的俗名叫做摩门教,原因是该教会除信奉普通的…...

上穷碧落下黄泉,源码追踪经验谈——侯捷
刚刚把开题的准备弄完了,决定好好研究一个开源引擎。看网友评价说几大开源引擎中,Irrlicht比较小,容易入门,所以决定先研究它了。在找Irrlicht相关资料时,看到有人推荐了侯捷老师的这篇文章,觉得此文对于研…...

sql查询:查询所有学生的个人信息和加入的多个班级(group_concat)
1.使用GROUP_CONCAT函数 SELECTls.stu_name,ls.id,ls.user_id,GROUP_CONCAT(class_name) FROMlx_stu AS lsLEFT JOIN lx_stu_class AS lsc ON ls.id lsc.stu_idLEFT JOIN lx_class as lc ON lsc.class_id lc.id GROUP BY ls.id此时学生的加入的班级名称会以逗号的形式组成一…...

连接数据库实现查询员工信息
连接数据库实现查询员工信息 按步骤操作实现查询 package com.zheng.z;import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;public class JDBC2 {private Connection conn nu…...

springboot获取登录用户的个人信息
上篇:Springboot+Vue的登录接口案例https://blog.csdn.net/weixin_39868387/article/details/120690035https://blog.csdn.net/weixin_39868387/article/details/120690035 一、springboot获取登录用户的个人信息 1、工作需求案例 需求:获取用户登录的基本信息 思路:通过…...

YonBuilder 应用构建教程之移动端扩展
YonBuilder 移动端扩展 在上一篇文章中,我们通过对员工信息实体的移动端页面构建来对 YonBuilder 移动端配置的基础流程进行了简单的介绍,本篇文章则通过之前搭建的出入库实体来进行扩展,主要介绍如何在移动端中添加跳转页面的功能以及通过函…...

个人信息查询 2297288061
系统及时更新...

1.23 实例:查询个人信息
每个员工都会有自己的档案,主管可以查看在职员工的档案。使用 Java 创建一个员工实体类,然后通过构造方法创建一个名为“王洁”的员工,最后打印出员工档案信息。示例步骤如下。 (1) 创建 Person 类,在该类中定义个人基本信息属性…...

【基金量化研究系列】大类资产配置研究(六)——多资产风险平价策略
文章目录1. 引言1.1 前文回顾与问题提出1.2 数据收集与标的资产选取1.3 基本假设2. 风险平价策略简介2.1 模型的建立2.2 模型求解3. 风险平价策略实现伪代码4. 基于python的模型实现4.1 python代码4.2 实证结果5. 结论5.1 策略表现5.2 可能存在的问题及潜在处理方法免责声明写在…...
信用风险建模 in Python 系列 1 - 信用风险 101
本文含 2919 字,7 图表截屏建议阅读 16 分钟0引言本文是「信用风险建模 in Python」系列的第一篇,其实在之前的 Cufflinks 那篇已经埋下了信用风险的伏笔,信用组合可视化信用风险 101信用风险(credit risk)最终源于交易…...

经验风险最小化
学习理论: 偏差方差权衡(Bias/variance tradeoff)训练误差和一般误差(Training error & generation error)经验风险最小化(Empiried risk minization)联合界引理和Hoeffding不等式ÿ…...

script标签放在页面头部和尾部的区别
script标签放在页面头部和尾部的区别 一般script标签会被放在头部或尾部。头部就是head里面,尾部一般指body里面 ------放在各个位置的区别 1.标签放置在标签内部时: 将script放在里,浏览器解析HTML,发现script标签时&…...

matlab 求集中度,matlab代写使用Copula仿真优化市场风险数据VaR分析
使用Copula建模相关默认值此示例探讨了如何使用多因素copula模型模拟相关的交易对手违约。鉴于违约风险敞口,违约概率和违约信息损失,估计交易对手组合的潜在损失。一个creditDefaultCopula对象用于每个债务人的信用与潜在变量模型。潜在变量由一系列加权…...
matlab使用Copula仿真优化市场风险数据VaR分析
使用Copula建模相关默认值 此示例探讨了如何使用多因素copula模型模拟相关的交易对手违约。 相关视频:Copula算法原理和R语言股市收益率相依性可视化分析 Copula算法原理和R语言股市收益率相依性可视化分析,时长16:34 最近我们被客户要求撰写关于copul…...

商业智能 BI 跟业务系统的思维差异,跨越和提升
各行业都已开始进入数据时代,但很多企业还是分不清商业智能 BI 跟一般的业务信息化系统定位、用户、思维层面上的差异。 在企业的 IT 信息化规划中,基础的业务系统建设一定是走在前面的,有了这些系统基础,才会有数据的积累&#…...

深度学习 数据长尾问题
文章目录前言基本方法重采样重加权更多工作参考参考前言 最近忙着工作,上班下班放假时间都被工作沾满了,都没什么时间写博客。今天看了一篇文章万字综述:如何打造自动驾驶的数据闭环?,刚好在跟最近在做的目标检测有关…...

尾部关尾风平价和圣杯布
转 尾部相关性、尾部风险平价和圣杯分布 作者:石川,量信投资创始合伙人,清华大学学士、硕士,麻省理工学院博士;精通各种概率模型和统计方法,擅长不确定性随机系统的建模及优化。知乎专栏:https://zhuanlan.zhihu.com/mitcshi。已获授权 摘要:本文首先介绍了尾部相关性…...
信用风险建模 in Python 系列 6 - 阈值模型校正
完整代码和数据链接:https://pan.baidu.com/s/1FVku6WefSBfhRwWILiaCrw提取码:vx4p二维码本文是「信用风险建模 in Python」系列的第六篇,其实在之前的 Cufflinks 那篇已经埋下了信用风险的伏笔,信用组合可视化信用风险 101独立模…...

如何用matlab求风险价值,Var风险价值的计算方法
1. Find a set of return data froma set of price/rate data: P2/P1 - 1 or Ln(P2) - Ln(P1)2. Calculate mean AVERAGE(return data)3. Calculate stdev STDEV(return data)4. Calculate VaR (99% confidence level) mean - 2.33*stdev, shouldbe negative.5. today val...

尾部相性尾部风险平价和圣杯布
转 尾部相关性、尾部风险平价和圣杯分布 作者:石川,量信投资创始合伙人,清华大学学士、硕士,麻省理工学院博士;精通各种概率模型和统计方法,擅长不确定性随机系统的建模及优化。知乎专栏:https…...

不在杠杆中爆发,就在杠杆中灭亡
前几天有个热点新闻,技术圈一位腾讯云数据库专家借了很多同事的钱炒股,但遭遇市场持续下跌,最终纸包不住火,爆了出来。借钱炒股,本质就是上杠杆,而都说杠杆是把双刃剑,我觉得更准确的比喻应该是…...

利用3年日数据检验尾部风险测度(基于风险调整收益)
此部份为经过前期的数据分析后,得到了显著结果的方法 library("readr") library("readxl") library("dplyr") library(stringr) library(PerformanceAnalytics) setwd("e:/R/tail risk/month") load("r.RData")…...

尾部关性尾部风险平价和圣杯分布
转 尾部相关性、尾部风险平价和圣杯分布 作者:石川,量信投资创始合伙人,清华大学学士、硕士,麻省理工学院博士;精通各种概率模型和统计方法,擅长不确定性随机系统的建模及优化。知乎专栏:https://zhuanlan.zhihu.com/mitcshi。已获授权 摘要:本文首先介绍了尾部相关性…...

后台生成4位图像验证码
主要依赖: <dependency><groupId>com.github.penggle</groupId><artifactId>kaptcha</artifactId><version>2.3.2</version> </dependency>spring相关依赖参照用到的另行添加。 package com.math.controller;impor…...

如何打开电脑的服务选项
【1】首先找到此电脑(我的电脑)单击鼠标右键,找到管理选项,单击“管理” 【2】现在,打开服务设置对话框---在左侧菜单栏找到“服务和应用程序”打开下拉菜单---在下拉菜单,单击“服务”打开计算机内所有的服…...

电脑一打开wps就黑屏_打开电脑,显示器黑屏该如何解决?
很多人都遇到过这么一种情况,电脑开机之后显示器黑屏无信号输入,那么这种情况该怎么解决?下面小编就来简单的说说,希望能帮到你。一、显示器与主机视频线连接错误显示器接线错误是经常用户遇到的问题,一般这类主机都安装了独立显…...

计算机打开好多页面,如何设置打开电脑浏览器时同时打开多个网页
我们知道,在浏览器中可以设置主页,这样就可以在打开浏览器的时候自动打开这个主页。那么,如果在电脑中需要同时打开多个网页,能不能实现这样的功能呢?在接下来的内容要和大家介绍Edge浏览器和Chrome浏览器在打开时同时打开多个…...

【计算机体系结构】指令集体系结构、微体系结构简介
1. “虚拟” to “现实” 首先可以看这张图片,下面的 Physics 所指的是我们的物理世界中看得见摸得到或者是客观存在的事物,而人类希望将自己的工作内容或者需求以某种方式映射到物理层面上,用物理变化带来的影响来完成人类工作内容。例如早期…...

大忙人系列_maven依赖多个本地仓库
写在开始 公司开发环境是纯内网开发,离线环境。所以有些依赖的话是不能直接下载下来使用,需要在外网下载下来,然后通过U盘导入内网的repository,但是有时候可能由于内网的开发工具的BUG/其他原因,你导入的maven仓库中…...

IP-guard三步助力企业做好信息防泄密工作
IP-guard三步助力企业做好信息防泄密工作 近些年来随着信息化的发展,对应的网络安全事件也一直层出不穷,且呈现出影响大、数量上升、涉及范围广的趋势。2020年11月位于墨西哥的富士康工厂遭到了勒索软件攻击,而且是双重勒索攻击,…...

大一新生计算机类专业入门
Java资深小白,不足之处,或者有任何错误欢迎指出。 --蓝紫程序员是出了名的高薪职业,而近几年的人工智能、大数据更是卷起又一波IT热。今年,身边的小年轻们高考志愿大都倾向了计算机类专业,老学姐在这里告诉你们&#x…...

【SRE笔记 2022.8.12 SRE概述03】
[TOC](SRE笔记 2022.8.12磁盘知识补充尺寸物理结构接口类型速度性能硬盘协议企业案例-提升用户体验网站解决方案优劣性解决数据丢失的方法中小企业案例IDC机房IDC服务器上架流程工具准备配置服务器细节windows vs linuxLinuxwindows区别学习环境推荐软件Linux运维互联网IT技术行…...

八方面入手规范IT管理[转]
IT部门本身管理不好,就不可能为业务部门提供满意的IT服务,业务部门对IT部门的满意度就会低,满意度低又会影响IT投资及新项目的开展,使IT部门陷入困境。所以建立高效的组织和形成规范高效的IT服务 管理机制,是CIO走向战…...

TryHackMe-Minotaur‘s_Labyrinth
Minotaur’s Labyrinth 嗨,是我,代达罗斯,迷宫的创造者。我能够 实现一些后门,但牛头怪能够(部分)修复它们 (这是一个秘密,所以不要告诉任何人)。但是让我们回到你的任务…...

【剧前爆米花--爪哇岛寻宝】java--线程不安全的原因及解决方法
作者:困了电视剧 专栏:《JavaEE初阶》 文章分布:这是关于线程安全相关的文章,在该文章中,我梳理了造成线程不安全的原因和使线程变安全的方法,希望对你有所帮助! 目录 线程的安全问题 什么是线…...

[MFSAN]Aligning Domain-specific Distribution and Classifier
一、Abstract摘要多源域到目标域的迁移学习,之前的大部分为单源域迁移学习即SUDA,这篇论文针对MUDA方法。之前的多源域迁移问题非常常见的一种方法就是,将所有的源域合并成一个单源域并且对齐分布(同SUDA方法一样)&…...

platform设备驱动实验
一、Linux 驱动的分离与分层 1、驱动的分隔与分离 传统驱动编写思路如下图: 下图这个就是 Linux 中的总线(bus)、驱动(driver)和设备(device)模型,也就是常说的驱动分离。 2、驱动的分层 分层的目的也是为了在不同的层处理不同的内容,以…...

this的指向以及更改方法
(一)this的指向 (1)普通函数的this指向, 谁调用指向谁,没有调用者的时候指向window (2)箭头函数的this指向 箭头函数本身没有this,箭头函数中this的引用就是最近作用域中的this(父级的this)…...

Android ServiceManager进阶
一:概要对android的binder通信机制,服务进程通过向 ServiceManager 添加对应的服务aidl实现binder对象,向其他应用提供服务能力。客户进程则是通过对应服务名从 ServiceManager 中获取对应的服务binder对象。android在最新版本中有三个不同的…...

小菜鸟Python历险记:(第四集)
今天写的文章是记录我从零开始学习Python的全过程。在Python中函数是非常重要的,这里也可以称为方法。在前面分享的几篇文章中用到的方法有print(),str(),int().这些都是方法,而除了上面写的这几种内置方法以外,我们也可以自己在程序中自定义…...

flink processFunction算子
flink processFunction算子 1 process function 概述1 process function 概述 process function 相对于前文所述的 map、flatmap、filter 算子来说,最大的区别是其让开发人员对数据 的 处 理 逻 辑 拥 有 更 大 的 自 由 度 ; 同 时 , Proce…...

【Git使用学习】本地项目更改以及相对应的Github操作
接上一节,因为是vue项目,导致有很多的node_modules需要安装,如果将这个文件夹也一同上传到github中,太慢了。因此上一节将这个文件夹删除了。但是,在本地运行的时候,这个文件夹不能删,不然就跑不…...

接口测试——电商网站接口测试实战(四)
1. 接口测试需求分析 常见接口文档提供的两种方式 ①word文档 ②在线文档 电商网站网址模拟练习:http://111.231.103.117:8083/swagger-ui.html 2. 登陆的分析 慕慕生鲜网址:http://111.231.103.117/#/login账号密码 点击execute后 输入账号密码后点…...

kettle—资源库详解
资源库 数据库资源库是将作业和转换相关的信息存储在数据库中,执行的时候直接去数据库读取信息,很容易跨平台使用,但是这里的资源库也不一定非要是数据库,目前支持三种,我们先看一下怎么进入资源库配置,我们在kettle 界面的右上角,有个connect ,这就是我们资源库的配置…...

解决Vue数组数据变化了,赋值后视图没更新的问题
最近遇到一个问题,表格数据变化了,直接赋值后视图没更新,打印表格数据发现是最新的数据,这主要是因为,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以属…...

SDK02- 窗口创建
窗口创建的六要素: 设计注册窗口类创建窗口实例显示窗口更新窗口消息循环窗口过程函数 设计注册窗口类 typedef struct _WNDCLASS { UINT style; //风格WNDPROC lpfnWndProc; //函数过程int cbClsExtra; //默认为0int cbWndExtra; //默认…...

三十二、实战演练之接口自动化平台的模型创建、项目管理接口设计
1. 模型编写 根据项目需求分析和数据库设计,我们创建项目应用,测试计划应用,测试报告应用,bug应用: django-admin startapp projects django-admin startapp testplans django-admin startapp reports django-admin …...

QT | 编写一个简单的上位机
QT | 编写一个简单的上位机 时间:2023-03-19 参考: 1.易懂 | 手把手教你编写你的第一个上位机 2.QT中修改窗口的标题和图标 3.图标下载 1.打开QT Creator 2.新建工程 Qt Creator 可以创建多种项目,在最左侧的列表框中单击“Application”&am…...

Python(白银时代)——面向对象
基本概念 面向过程 是早期的一个编程概念,类似函数,但是没有返回值 具体做法: 把完成某个需求的所有步骤,从头到尾 逐步实现 将某些功能独立的代码 封装成一个又一个 函数 然后顺序调用不同的函数 特点: 注重 步骤…...

5.方法(最全C#方法攻略)
目录 5.1 方法的结构 5.2 方法体内部的代码执行 5.3.1 类型推断和Var关键字 5.3.2 嵌套块中的本地变量 5.4 本地常量 5.5 控制流 5.6 方法调用 5.7 返回值 5.8 返回语句和void 方法 5.9 参数 5.9.1 形参 5.9.2 实参 位置参数示例 5.10 值参数 5.11 引用参数 5.12…...

C++中的多态与虚函数
多态是面向对象程序设计的关键技术之一。若程序设计语言不支持多态行,不能称为面向对象的语言。 多态性是考虑在不同层次类中,以及在同一类中,同名成员函数之间的问题。 函数重载,运算符重载,属于编译时的多态性。 以类…...

LeetCode算法 不同路径 和 不同路径II C++
目录题目 不同路径参考答案题目 不同路径II参考答案题目 不同路径 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finis…...

Windows 下修改Tomcat jvm参数
一、设置Windows服务自动启动方式修改 修改注册表或者修改运行tomcatW.exe出来的“Java”选项都行 1、注册表修改 运行:regedit 找到: (64位操作系统)HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Pr…...

【独家】华为OD机试 - 猜字谜(C 语言解题)
最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南)华为od机试,独家整理 已参加机试人员的实战技巧本期题目:猜字谜 题目 小王设计了一…...

Python自动化测试实战篇(7),初识pytest做一个简单的接口测试,allure输出可视化测试报告
这些是之前的文章,里面有一些基础的知识点在前面由于前面已经有写过,所以这一篇就不再详细对之前的内容进行描述 Python自动化测试实战篇(1)读取xlsx中账户密码,unittest框架实现通过requests接口post登录网站请求&…...

CKA认证考试难不难?考试内容是什么?
我们的社会在不断进步,市场对于人才的要求也越来越高,而随着第四次工业革命的发展,各个国家都在奋力研发信息通讯技术,旨在为了能够获得最先进的技术,而CKA则是非常重要的一项。CKA认证考试是由Linux基金会和云原生计算…...

DETR模型训练
前面在完成了DETR模型的构建后,我们接下来便是进行数据集构造与模型训练了,模型训练阶段会涉及到网络前向传播与后向传播,这才是真正的难点。 数据集构造 创建数据集 在数据集构造前其首先进行了优化器的选择与学习策略的选择。随后创建数…...

一文弄懂熵、交叉熵和kl散度(相对熵)
一个系统中事件发生的概率越大,也就是其确定性越大,则其包含的信息量越少,可以认为一个事件的信息量就是该事件发生难度的度量,事件所包含的信息量越大则其发生的难度越大。并且相互独立的事件,信息量具有可加性。相互…...
计算机科学导论笔记(十五)
目录 十七、计算理论 17.1 简单语言 17.1.1 简单语句的威力 17.2 图灵机 17.2.1 图灵机的组成部件 17.2.2 对简单语言的模拟 17.2.3 邱奇-图灵论题 17.3 哥德尔数 17.3.1 表示一个程序 17.3.2 翻译一个数字 17.4 停机问题 17.4.1 停机问题是不可解的 17.5 问题的复…...

基于java下Springboot框架实现社区维修平台系统展示
基于java下Springboot框架实现社区维修平台系统开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven…...

Unreal Engine 网络系统(一):网络模型及网络视角下的Gameplay框架
个人学习记录,如有错误请及时联系我!欢迎交流! 1.客户端-服务器模型 服务器:有一个客户端担当游戏状态的主控者 作用:做出所有重要决定,保证公平性,包含所有主控状态,处理客户端连接…...

如何修改百度百科上的介绍,高级别账号更容易成功吗?
个人或企业想要修改原有百科词条上的介绍,但却又不知道如何入手。怎样才能拥有更高级别的百科账号,高级别百科账号更容易成功修改通过吗,以下洛希爱做百科网为大家简单介绍。一、拥有百科高级账号的条件1、首先帐号必须达到4级2、通过率必须在…...

关于element-plus按需引入时,在vite中使用自定义主题失效的问题解决
1. 问题产生过程描述: 1)使用vite创建vue3项目 2)按部就班的安装element-plus vue-router axios npm i element-plus vue-router axios -S 3) 把element-plus按需引入按照官网的步骤操作好 主题 | Element Plus 4)axios按…...

java中堆栈的实现总结
java中堆栈的实现总结1. Java中的Stack1.1 Stack类的使用1.2 Stack类的分析2. java中的queue2.1 queue的方法定义2.2 Deque2.3 Queue的常见实现类3. 总结1. Java中的Stack 1.1 Stack类的使用 Stack的声明如下,可以看到Stack继承了Vector,因此Stack可以…...

Java面试总结篇
引用介绍 1.线程安全不安全的概念 线程安全: 指多个线程在执行同一段代码的时候采用加锁机制,使每次的执行结果和单线程执行的结果都是一样的,不存在执行程序时出现意外结果。 线程不安全: 是指不提供加锁机制保护,有可能出现多个线程先后更改数据造成所得到的数据是脏…...

离散选择模型中的分散系数theta到底该放在哪里呢?
前言 \quad~~一直都在想为啥子离散选择模型中分散系数以分母形式出现而在路径选择公式中以系数形式出现呢?看着公式想了想,现在想出了一个似乎感觉应该差不多很合理的答案,希望与大家一起探讨。 进入正题 根据随机效用理论,决策…...

网站经常被DDOS攻击的原因有哪些
过去这几年,互联网创业热潮非常火,几乎所有行业都向互联网转型。很多互联网公司都会经历被 DDoS 攻击,导致网站服务瘫痪,用户流失以及公司信用度的负面影响。什么是 DDOS 攻击呢?DDOS 攻击是通过控制大量僵尸网络向服务…...

实验二 数据库的查询
目录 一、实验学时 二、实验目的 三、实验要求 四、实验内容 五、实验思考 六、不问初心,方得始终,加油,诸君!!! 一、实验学时 2学时 二、实验目的 (1)掌握查询的概念和方法。…...

Java中的JSON序列化和反序列化
文章目录Java 和 JSON 序列化JSON 简介JSON 是什么JSON 标准JSON 优缺点JSON 工具Java JSON 库JSON 编码指南Fastjson 应用添加 maven 依赖Fastjson API定义 Bean序列化反序列化Fastjson 注解JSONFieldJSONTypeJackson 应用添加 maven 依赖Jackson API序列化反序列化容器的序列…...

数据结构和算法(1):数组
目录概述动态数组二维数组局部性原理越界检查概述 定义 在计算机科学中,数组是由一组元素(值或变量)组成的数据结构,每个元素有至少一个索引或键来标识 In computer science, an array is a data structure consisting of a col…...

第一章 作业【编译原理】
课堂测试【编译原理】前言推荐第一章 作业课堂测试课前测03-01课后练习03-01课后复习03-08课前热身03-13最后前言 2023-3-13 20:56:25 以下内容源自《编译原理》 仅供学习交流使用 推荐 无 第一章 作业 无 课堂测试 课前测03-01 1(多选题) 编译原理各阶段的工作都涉及…...

接口测试用例怎么编写?给你一个最详细的模板要不要?
目录 接口测试用例 总部用户同步接口 添加组织 添加用户 删除组织 删除用户 更新组织 更新用户 应用系统同步用户接口 根据组织编码获取用户 根据系统编码获取用户 构型数据的集成 获取构型数据接口 接口测试用例 总部用户同步接口 添加组织 编制人 薛郝 审定…...

基于深度学习的动物识别系统(YOLOv5清新界面版,Python代码)
摘要:动物识别系统用于识别和统计常见动物数量,通过深度学习技术检测日常几种动物图像识别,支持图片、视频和摄像头画面等形式。在介绍算法原理的同时,给出Python的实现代码、训练数据集以及PyQt的UI界面。动物识别系统主要用于常…...

大数据框架保姆级安装教程——Kafka(3.0.0)
大数据框架保姆级安装教程——Kafka(3.0.0) 1.1 安装部署 1.1.1 集群规划 hadoop102hadoop103hadoop104zkzkzkkafkakafkakafka 1.1.2 集群部署 **0)**官方下载地址:http://kafka.apache.org/downloads.html **1)*…...

医药行业的数据分析,我们需要了解什么?
近三年我们被疫情包围了,医院和药品备受关注,在进行数据分析,不仅需要通用的统计分析技能,更需要对行业、对业务的高度理解。像医药行业的数据分析,就需要数据分析人员深入行业内部,掌握关键的指标和术语。…...

小工具2:Windows curl.exe
以语雀 文档为准 GitHub 仓库:https://github.com/curl/curlGitHub 仓库 Windows 版:https://github.com/curl/curl-for-win下载页面:https://curl.se/download.htmlWindows 版下载页面:https://curl.se/windows/ 支持 64 位&…...

《C++ Primer Plus》(第6版)第13章编程练习
《C Primer Plus》(第6版)第13章编程练习《C Primer Plus》(第6版)第13章编程练习1. Cd类2. 使用动态内存分配重做练习13. baseDMA、lacksDMA、hasDMA类4. Port类和VintagePort类《C Primer Plus》(第6版)第…...

如何配置VoLTE, ViLTE and VoWifi(IMS config for VoLTE, ViLTE and VoWifi)
如何打开VoLTE,ViLTE,VoWifi Feature (How to enable VoLTE,ViLTE,VoWifi feature option) VoWifi有些module属于binary release,如果基线版本不支持VoWifi, 请使用[Patch Release]模板提交eservice给CPM申请open VoWi…...

leetcode 1458 两个子序列的最大点积
给你两个数组 nums1 和 nums2 。 请你返回 nums1 和 nums2 中两个长度相同的 非空 子序列的最大点积。 数组的非空子序列是通过删除原数组中某些元素(可能一个也不删除)后剩余数字组成的序列,但不能改变数字间相对顺序。比方说,…...

【每日随笔】西游记相关随笔 ( 天庭的结构以及人事关系 | 天庭组织架构 | 佛门组织架构 | 天庭的盘根错节 | 西游记中的人情世故 )
文章目录一、天庭组织架构二、佛门组织架构三、天庭的盘根错节四、西游记中的人情世故西游记 和 红楼梦 每一个细节都 蕴含了 大智慧 , 值的每个人都去精读 , 是中国古代智慧的集大成者 ; 西游记 讲的不是 打打杀杀 , 讲的是 人情世故 ; 西游记 反应的是 明朝嘉靖年间 的 政治…...

用两个栈实现队列(LeetCode)算法题
直接进入主题 就是这样了,如果没有仔细看题的话,请回去再仔细看一下 下面开讲 先讲思路在来代码 首先我们想一下队列的性质,队列是先进先出,而栈是后进先出,所以如果想要用栈实现队列,那么一个栈肯定是不…...

机器人运动-力混合控制
#关节动力学 #运动控制 #力控制 详细可参考书本:《现代机器人学:机构规划与控制》第11.5章,其中的动力学方程见第8章相关内容。 其他参考资料: [【现代机器人学】学习笔记十:机器人控制_zkk9527的博客-CSDN博客] 力控制 关节空间…...

3分钟了解热成像仪
3分钟了解热成像仪随着社会老龄化程度的逐步加重,越来越多人喜欢养宠物,这样身边多了一种“陪伴”。但随之而来的宠物丢失以及误入狭小空间或者隐秘空间的情况也层出不穷,比如猫猫躲进汽车底盘,进入天花板/管道隔层等,…...

vulnhub之XXE靶机详解
vulnhub之XXE靶机详解前言一、靶机安装二、信息收集阶段1. 环境2. 探测局域网主机3. 信息收集三、解题相关网站前言 拒绝水文,从我做起,如果如下教程有看不懂的,直接call小编哦 一、靶机安装 靶机下载地址:https: //download.vul…...

多线程的理论基础
为什么需要多线程? 大家都知道,CPU、内存、I/O 设备的速度是有极大差异的,为了合理利用 CPU 的高性能,平衡这三者的速度差异,计算机体系结构、操作系统、编译程序都做出了贡献,主要体现为: CPU 增加了缓存&…...

SC8P1762E_汇编指令一览表
控制类 NOP, 空操作 STOP, 进入休眠模式 CLRWDT, 清零看门狗计数器 数据传送 LD,在汇编语言中通常指的是Load LDIA i, 立即数 i 送给 ACC LDIA的全称是Load Immediate to Accumulator,意思是“将立即数加载…...

ES-nested和join查询
1. 嵌套类型:Nested nested属于object类型的一种,是Elasticsearch中用于复杂类型对象数组的索引操作。Elasticsearch没有内部对象的概念,因此,ES在存储复杂类型的时候会把对象的复杂层次结果扁平化为一个键值对列表。 比如&#…...

04 - 进程参数编程
---- 整理自狄泰软件唐佐林老师课程 查看所有文章链接:(更新中)Linux系统编程训练营 - 目录 文章目录1. 问题1.1 再论execve(...)1.2 main函数(默认进程入口)1.3 进程空间概要图1.4 编程实验:进程参数剖析1…...

【Oracle 19c 及 21c】Windows 平台客户端包差异
很久不关注 Oracle Database12c 以后的变化了,最近试着安装、测试一下,在下载 Windows 端客户端时发现和以前的 11g 和 12c 大不相同,于是研究了一下,觉得有必要写一篇文章记录一下。 文章目录一、简介二、client 类型安装包2.1 选…...

Maven打包子模块
项目结构1. project_01: 一个多模块的maven工程2. module_01: 工程project_01的一个模块3. submodule_01: 模块module_01的一个子模块其中,project_01, module_01, submodule_01均为其pom中的artifactId,整个结构如图:project_01 <br/>…...

AI标注工具Labelme和LabelImage Labelme和LabelImage集成工具
在AI数据标注过程中,难免会使用到标注工具,常用的工具无非是Labelme和LabelImage。 Labelme是标注目标轮廓,而LabelImage则是标注目标的区域,然而使用原生态的工具,需要用到python命令行,十分麻烦…...

【springcloud 微服务】Spring Cloud Alibaba Sentinel使用详解
目录 一、前言 二、分布式系统遇到的问题 2.1 服务可用性问题 2.1.1 单点故障 2.1.2 流量飙升 2.1.3 容错机制 2.2 服务雪崩问题 三、 服务可用性解决方案 3.1 服务容错机制 3.1.1 超时机制 3.1.2 服务限流 3.1.3 隔离 3.2 服务熔断 3.2.1 什么是服务熔断 3…...

【分享】基于TPS65140的LCD驱动电路方案——飞凌嵌入式
在一次项目定制中,客户要求我们将CPU主控和LCD显示屏电压驱动电路做成一体板,LCD显示屏所需要的AVDD、VGH、VGL等电压需要主控板提供,因为这几路电压所输出的电流都很小(一般都不会超过10mA,具体可以查阅屏体手册&…...

关于 flex 布局时,子元素宽度超出父元素问题及解决方案(问题)
文章目录1. 第一次遇到这个问题的场景2. 第二种情况3. 问题原因4. 解决方案4.1 方案一4.2 方案二1. 第一次遇到这个问题的场景 先看效果图,大家可以看一下下面的样式,很明显左边和右边的盒子我是给的定宽,但是被挤压了 这个是我在项目中遇到的…...