数据结构与算法——冒泡排序 目录前言一、冒泡排序算法介绍二、冒泡排序算法原理三、示例分析四、实现代码前言冒泡排序是一种常用的排序方法。它是一种具有“交换”性质的排序方法。一、冒泡排序算法介绍冒泡是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端
数据结构与算法——选择排序 目录文章目录前言一、选择排序二、代码示例总结前言选择排序法是一种不稳定的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到全部待排序的数据元素排完。一、选择排序示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、代码示例选择排序示例代码如下:(C语言)#include<.
数据结构与算法——算法 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的
数据结构与算法——二分查找 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言二分查找是一种高效的查找算法,其输入是一个有序的元素列表。本文通过具体的例子来说明什么是是二分查找。提示:以下是本篇文章正文内容,下面案例可供参考一、二分查找是什么?二分查找是一种算法。下面的实例说明了二分查找的工作原理。我随便想一个1~100的数字。你的目标是以最少的次数猜到这个数字。你每次猜测后,我
ESP8266NodeMCU-手机端远程点灯 本节通过ESP8266NodeMCU连接到wifi,通过手机端app来打开和关闭灯。准备工作:1.手机端 下载【点灯blinker】软件,应用市场可以下载;2.Arduino安装了ESP8266库文件;如果没有安装库文件,参考以下步骤:打开Arduino软件,在【文件-首选项-附加开发板管理器网址】填入:https://arduino.esp8266.com/stable/package_esp8266com_index.json在【项目-加载库-管理库】,库管理器中搜索ESP8
STM32——USART1重映射 为了使不同器件封装的外设 IO 功能数量达到最优,可以把一些复用功能重新映射到其他一些引脚上。STM32 中有很多内置外设的输入输出引脚都具有重映射(remap)的功能。我们知道每个内置外设都有若干个输入输出引脚,一般这些引脚的输出端口都是固定不变的,为了让设计工程师可以更好地安排引脚的走向和功能,在 STM32 中引入了外设引脚重映射的概念,即一个外设的引脚除了具有默认的端口外,还可以通过设置重映射寄存器的方式,把这个外设的引脚映射到其它的端口。...
STM32 CAN通信之二:正常模式 昨天测试了CAN通信的环回模式,今天逻辑分析仪到手了,借助这一神器完成了今天的CAN通讯之正常模式数据收发。对于CAN通讯正常模式来说,没有逻辑分析仪或者CAN盒(某宝上可以买到),分析数据,想要调通的话只能看运气了,有了工具就可以轻松的看到数据的收发过程。本次正常模式的测试是用两块板子进行测试,一块板子(STM32F103RET6)用于发送数据,另一块板子是正点原子的战舰开发板(STM32F103ZET6)用于接收数据(中断方式接收)。两块板子的CAN_H和CAN_H相连,CAN_L和CAN_L相连。
STM32 CAN通信之一:环回模式 最近在学习CAN通信协议,先测试了一下环回模式,以确认硬件电路是没有问题的。由于手头上暂时没有逻辑分析仪,后期再测试CAN通信正常收发模式。期待【STM32 CAN通讯之二:正常模式】。记录一下整个测试的过程,算是一种总结,后期方便自己查阅,同时也可以给正在搞CAN通信的小伙伴一点点参考借鉴。软件:STM32CubeMX(V5.2.0)+KEIL本例程采用的芯片是STM32F103RET6,其中CAN通信部分硬件电路连接如下图所示,CAN_P和CAN_N分别连接到芯片的PA11和PA12引脚上,PC
STM32F030F4P6-提高ADC采集精度 STM32F0/F1系列的ADC都是12位的,通常情况下我们都需要将AD采集的码值进行转换得到实际的电压值,然后根据不同类型的传感器,换算为对应的温度、压力等数据。常规的算法是,将ADC采集到的值ad_value用3.3V对应的码值(4095 = 2^12-1,因为是12的ADC)来进行换算,ad_value*3.3/4095,这种情况对于要求不是很高的场合可以适用,但是对于采样精度要求较高的场合就不合适了。因为电源电压3.3V通常都不是稳定的3.3V,所以采集的值会随着电源电压波动。为了解决上述的
硬件电路之滤波电容 半波整流电流是常见的一种将交流转成直流的电流。如下是一个简单的半波整流电路,利用二极管的单向导通性,将AC20V,整流成直流。断开开关,不接滤波电容波形,红色是输入波形,绿色是输出波形。为了方便看清波形,将输出波形向上平移了。闭合开关S1,接10uF电容,电容不停的充放电,输出有纹波,纹波较大,输出波形如下闭合开关S1,接100uF电容,输出波形相对比较平滑,输出波形如下:闭合开关S1,接1000uF电容,输出波形接近是直线,稳定输出根据实际情况来选择滤波电容的大小.
python 未来5天天气查询 个人网站:https://chenqi.autmake.com/雨打梨花深闭门,忘了青春,误了青春。天气对人们日常生活的重要性不言而喻,提前了解天气,早做安排,早做准备。以下程序用了十几行代码,调用天气查询API,获取所查询城市近5天的天气。import requestsimport jsonweatherUrl = "http://wthrcdn.etouch.cn/we...
STM32定时器中断(战舰V3) 个人网站:https://chenqi.autmake.com/一、定时器介绍STM32F1 的定时器功能十分强大,有 TIM1 和 TIM8 等高级定时器,也有 TIM2~TIM5 等通用定时器,还有 TIM6和 TIM7 等基本定时器。下面以通用定时器TIM3为例来简单介绍STM32定时器的使用。STM32F1 的通用定时器是一个通过可编程预分频器(PSC)驱动的 16 位自动装载...
STM32实现数码管显示DS18B20温度 个人网站:https://chenqi.autmake.com/1.数码管介绍数码管分共阴极连接和共阳极连接两种,本次试验所用的数码管为共阴极连接方式,如下所示。数码管为4位8段数码管,8段分别是A,B,C,D,E,F,G,DP,如显示数字3,需要将A,B,C,D,G点亮,显示其他数字原理相同。2.硬件资源介绍试验采用的是正点原子mini开发板,一个DS18B20,一个...
CMD命令运行java程序 1.打开cmd窗口快捷键:windows+R2.输入java程序所在路径,如d:3.切换到java程序所在的文件夹下4.运行javac HelloWorld.java命令,再运行java HelloWorld命令即可javac后面跟着的是java文件的文件名,例如 HelloWorld.java。 该命令用于将 java 源文件编译为 class 字节码文件,如:jav...