编程语言中,我们习惯将函数(方法)调用自身的过程称为递归,调用自身的函数称为递归函数,用递归方式解决问题的算法称为递归算法。 调用方式 函数(方法)调用自身的实现方式有 2 种,分别是: 直接调用自身,例如: int function(/*....*){ //...... //调用自身 function(/*...*); //...... } 间接调用自身,例如: int funciton1(/*...*/) { //...... //调用另一个函数 function2(/*...*/); //...... } int function2(/*...*/) { //...... //调用function1()函数 funciton1(/*...*/); //...... } 在上面程序中,function1() 函数内部调用了 function2() 函数,而 function2() 函数内部又调用了function1() 函数,也就是说 function1() 函数间接调用了自身。 具体示例 在设计递归函数时,我们要为它设置一个结束递归的“出口”,否则函数会
Google Hacking,有时也会被称为 Google dorking,是一种利用谷歌搜索的高级使用方式进行信息收集的技术。在百度百科释意为利用 Google 搜索引擎搜索信息来进行入侵的技术和行为,现指利用各种搜索引擎搜索信息来进行入侵的技术和行为。 而 Web 信息的搜集建立在 IP、域名以及端口所收集的数据之上。每个 IP 及域名对开放的端口都可能搭建了 Web 服务,本文将介绍 Google Hacking 的其他常用语法。 基础语法 逻辑与:and (+) 逻辑或:or (|) 逻辑非: not (-) 完整匹配:"关键词" 小括号:() 多个关键词划分为一组,并进行优先查询 通配符:* ? 用法:即布尔运算符,类似编程写法。 举例:找一些包含 SEO 和网络营销有关的网站则可以输入关键词:“SEO and 网络营销”。 高级搜索 在 Google Hacking 中可以使用高级运算符,以缩小搜索结果范围,最终获取到需要的信息。高级操作符虽然容易使用,但也需要遵循严格的语法。 需要知道 基本语法是:operator:search_term ,当中不能有空格; 布
内存分区模型 C++ 程序在执行时,将内存大方向划分为 4个区域 代码区:存放函数体的二进制代码,由操作系统进行管理的 全局区:存放全局变量和静态变量以及常量 栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等 堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收 内存四区意义: 不同区域存放的数据,赋予不同的生命周期,给我们更大的灵活编程。 程序运行前 在程序编译后,生成了exe可执行程序,未执行该程序前分为两个区域。 代码区: 存放 CPU 执行的机器指令 代码区是 共享 的,共享的目的是对于频繁被执行的程序,只需要在内存中有一份代码即可 代码区是 只读 的,使其只读的原因是防止程序意外地修改了它的指令 全局区: 全局变量和静态变量存放在此 全局区还包含了常量区, 字符串常量和其他常量也存放在此 该区域的数据在程序结束后由操作系统释放 示例: //全局变量 int g_a = 10; int g_b = 10; //全局常量 const int c_g_a = 10; const int c_g_b = 10; int main() {
前言 词云,也称为文字云或标签云,是一种将文本中出现频率较高的关键词以视觉化的方式展现的图形。词云的文字大小、颜色、形状等都可以根据不同的需求进行调整,以突出文本的主旨或者传达一定的情感。词云可以用于分析文本的内容,展示关键词的热度,美化文本的呈现,增加文本的趣味性等。 词云的制作方法有很多,有些是在线的,有些是需要下载相关软件的。本次实验主要通过使用 WordCloud 库在 Python 中绘制中文词云,使用的 IDE 为 Jupyter。 准备工作 在本次实验前,我们需要提前准备以下素材: 一篇文章,以文本文件 (.txt) 格式保存 停用词表 字体文件 一张图片(此次采用的是.PNG 格式) 使用的库文件 wordcloud (词云制作) jieba (中文分词) numpy (数据处理) matplotlib (基础画图) PIL (读取图片) 如果没有以上相关库,可使用 pip 或者 conda 进行安装,建议使用国内镜像。 实验原理 在完成上述的准备工作后,就需要对我们已有的文本进行处理,因为生成词云 wordcloud 默认会以空
前言 人脸识别是一种基于人的脸部特征信息进行身份识别的一种生物识别技术。它利用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行分析和识别。人脸识别具有方便、快速、友好、无侵入等优点,已经广泛应用于安全防范、金融支付、社交娱乐、智能家居等领域。 本文将介绍如何使用python和openCV(接下来简称 cv2 )来实现人脸识别,包括如何采集人脸图像、如何使用摄像头进行人脸检测和识别等,并通过代码示例展示具体的实现过程。 环境配置 本次实验中,主要是在 Jupyter 用 Python 基于 openCV 实现人脸识别。 这里就不详细介绍如何安装配置了,可以通过以下链接访问具体过程: Jupyter Notebook 介绍、安装及使用教程 Python安装与环境配置 使用pip或在anaconda安装 openCV 实验原理 此次实验过程内容比较简单,先通过cv2调用摄像头,从视频中分离每一帧画面,再调用cv2预训练的模型face_cascade对画面进行人脸检测,检测到人脸后,在对应帧画面上绘制红色方框。
Justin_Wu
山不让尘,川不辞盈
本网站由 提供CDN加速/云存储服务
鄂ICP备2023005457号 鄂公网安备 42011302000815号