数据结构——栈与队列
栈 stack栈是限定仅在表尾进行插入和删除操作的线性表。把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。栈又称为后进先出(Last In First Out)的线性表,简称LIFO结构。
栈的顺序存储结构实现因为栈本身属于线性表的特例,那么栈的顺序存储其实也是线性表顺序存储的简化,称为顺序栈。
sqstack.h
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849#ifndef SQSTACK_H#define SQSTACK_H/************************************************************************** 宏定义*************************************************************************/#defin ...
蜂鸣器播放超级马里奥(STM32HAL库)
蜂鸣器播放超级马里奥(STM32HAL库)硬件部分1.无源蜂鸣器原理蜂鸣器按驱动方式可分为有源蜂鸣器(内含驱动线路)和无源蜂鸣器(外部驱动)(“源”指的是激励源)。有源蜂鸣器虽加电源就可以发出声音但频率相对固定,这里使用的是无源蜂鸣器,无源蜂鸣器利用电磁感应现象,为音圈接入交变电流后形成的电磁铁与永磁铁相吸或相斥而推动振膜发声,接入直流电只能持续推动振膜而无法产生声音,只能在接通或断开时产生声音。
2.频率音调对照表所以只需要将无源蜂鸣器接入电路中并用单片机控制引脚给它一定频率的方波信号就可以产生不同音调,再用延时加以节奏就可以用蜂鸣器模拟曲调实现音乐效果了。
软件部分1.播放单个音调音调函数第一个参数hz控制声音音调,本质是在循环中控制高低电平时间及占比即可控制音调,比如要播放中音1这个音调,该音调频率为523Hz也就是每个电平变化周期是1/523s==>1000000/523us,让其中高低电平各占一半,即输出低电平后延时500000/523us再输出低电平,后再延时500000/523us再输出高电平 ...
数据结构——线性表
线性表线性表(List):零个或多个数据元素的有限序列。
顺序存储线性表
优点: 可以快速存取表中任一位置的元素,无需为变种元素之间的逻辑关系增加存储空间。
缺点: 插入删除需要移动大量元素,长度变化较大时难以确定存储空间的容量(分配大了浪费,小了溢出),造成存储空间碎片。查找性能O(1),插入删除O(n)。若线性表需要频繁查找,很少进行插入和删除操作时可以采用顺序存储结构,一个简单的顺序存储线性表实现例子:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331 ...
阿里云服务器部署个人网盘服务
阿里云服务器部署个人网盘服务
相关资源:kiftd : https://github.com/KOHGYLW/kiftd
1.安装JAVA运行环境1apt install java-11-openjdk-devel
安装完成后查看版本,输出下面内容说明已经安装好。
1234[root@nafxali ~]# java -versionopenjdk version "11.0.9.1" 2020-11-04 LTSOpenJDK Runtime Environment 18.9 (build 11.0.9.1+1-LTS)OpenJDK 64-Bit Server VM 18.9 (build 11.0.9.1+1-LTS, mixed mode, sharing)
CentOS 8还支持无头版本的OpenJDK,该版本提供了无需图形用户界面(不支持键盘,鼠标和显示系统)来执行应用程序所需的最少Java运行时,该版本具有更少的依赖性和更少的系统资源,因此它更适合于服务器应用程序。
1sudo apt install java-11-openjdk-headle ...
IPC-610E(电子组件的可接受性)
IPC-610E(电子组件的可接受性)IPC简介 IPC最初为“The Institute of Printed Circuit”的缩写,即美国“印制电路板协会”,后改名为“The Institute of the Interconnecting and Packing Electronic Circuit”(电子电路互连与封装协会),1999年再次更名为“Associatation Of Connecting Electronics Industries”(电子制造业协会”)。由于IPC知名度很高,所以更名后,IPC的标记和缩写仍然没有改变。IPC拥有两千六百多个协会成员,包括世界著名的从事印制电路板设计、制造、组装、OEM(Original equipment manufacturer 即原始设备制造商)加工、EMS(electronics manufacture service 即电子制造服务)外包的大公司,IPC与IEC、ISO、IEEE、JEDC一样,是美国乃至全球电子制造业最有影响力的组织之一。
IPC-A-610是国际上电子 ...
环境温湿度监控系统(51+DHT11+1602液晶)
环境温湿度监控系统(51+DHT11+1602液晶)使用模块:DHT11 Datasheet: https://www.alldatasheetcn.com/datasheet-pdf/pdf/1132088/ETC2/DHT11.htmlSMC1602 Datasheet: https://www.alldatasheetcn.com/datasheet-pdf/pdf/106031/ETC/SMC1602A.html89C52 Datasheet: https://www.alldatasheet.com/datasheet-pdf/pdf/240685/ATMEL/AT89C52.html
一.原理图
二.1602显示模块模块头文件:引脚定义,接口定义。
123456789101112131415161718#ifndef _1602_H_#define _1602_H_#include <reg51.h>#include <intrins.h>#define LCD_Bus P2 //LCD1602数据总线sbit RS = P0^7; // LCD ...
在浏览器中输入 URL 回车之后发生了什么
本文转自4Ark注意: 本文的步骤是建立在,请求的是一个简单的 HTTP 请求,没有 HTTPS、HTTP2、最简单的 DNS、没有代理、并且服务器没有任何问题的基础上,儘管这是不切实际的。
大致流程
URL 解析
DNS 查询
TCP 连接
处理请求
接受响应
渲染页面
一、URL 解析
地址解析 首先判断你输入的是一个合法的 URL 还是一个待搜索的关键词,并且根据你输入的内容进行自动完成、字符编码等操作。
HSTS(HTTP Strict Transport Security) 由于安全隐患,会使用 HSTS 强制客户端使用 HTTPS 访问页面
其他操作 浏览器还会进行一些额外的操作,比如安全检查、访问限制(之前国产浏览器限制 996.icu)。
检查缓存
二、DNS 查询基本步骤
浏览器缓存浏览器会先检查是否在缓存中,没有则调用系统库函数进行查询。
操作系统缓存操作系统也有自己的 DNS 缓存,但在这之前,会向检查域名是否存在本地的 Hosts 文件里,没有则向 DNS 服务器发送查询请求。
路由器缓存路由器也有自己的缓存。
ISP DNS 缓存I ...
爬虫学习笔记(一)
Null
盘点国外知名游戏厂商(一)CD Projekt
盘点国外知名游戏厂商(一)CD Projekt本篇文章写于 2020 年 4 月,在赛博朋克 2077 漫长而又煎熬的等待之余我我决定以我个人视角盘点下那些带给我无数爱恨、惊喜与感动的游戏厂商们。文章资料同通过互联网搜集整理,如有错误还请指正,本文内容仅代表个人观点。
CD Projekt RED
av16789674《巫师 3》以及 CD Projekt 成功发展史-全 6 集游戏纪录片
第一个就提到“波兰蠢驴”的原因肯定不是馋 9 月即将登陆的《赛博朋克 2077》 的身子,也不是《巫师》三部曲那出色的游戏质量,而是他们心中那份对玩家足够的诚意与对游戏的热爱,让我将其视作当代游戏界的绿洲。
CD Projekt Red(后面简称 CDPR) 是波兰电子游戏研发商 CD Projekt 下的游戏开发部门,我们还是先从 CD Projekt 旗下的数字发行平台 GOG.com 今年推出的[30 天内退款政策]说起吧。这个政策毫无疑问是将目前市面上的数字发行平台的退换政策戳出了一个大窟窿,本来 STEAM 平台的[14 天 2 小时 ...















