- 博客(59)
- 资源 (1)
- 收藏
- 关注
原创 数据结构——二叉树
二叉树二叉树的顺序存储结点结构体struct treeNode {//二叉树结点 int value; bool IsEmpty;};定义一个二叉树 treeNode t[MAXSIZE];//定义一个二叉树完全二叉树存储方案普通二叉树(非完全)存储方案二叉树的链式存储n个结点的二叉链表共有n+1个空链域结点结构体struct BitNode {//二叉树链式存储结点 int value; BitNode* lchild, * rch
2021-04-28 18:58:14
240
原创 数据结构学习笔记——串
串是一种特殊的线性表,数据元素之间呈线性关系串的数据对象限定为字符集(如中文字符、英文字符、数字字符、标点字符等定义顺序存储静态存储typedef struct {//静态存储 char ch[MAXLEN]; int len;}SString;动态存储typedef struct {//动态存储 char* ch;//按串的长度分配存储区,ch指向串的基地址 int length;}HString;链式存储低密度typedef struct .
2021-04-22 20:42:49
350
原创 数据结构学习笔记——矩阵的压缩存储
矩阵的压缩存储数组的存储结构一维数组的存储结构各个数组元素大小相同,且物理上连续存放LOC:数组的起始地址数组元素a[i]的存放地址 = LOC + i * sizeof(Elem Type)二维数组的存储结构行优先存储b[i][j]的存储地址=LOC + (i*N + j) * sizeof(ElemType)列优先存储b[i][j]的存储地址 = LOC + (j*M+i) * sizeof(ElemType)矩阵普通矩阵的存储可以用二维数组存储特殊矩阵对称矩阵若n阶方程
2021-04-21 21:15:42
1652
原创 数据结构学习笔记——队列
队列的顺序实现顺序队列的定义typedef struct//顺序队列的定义{ int data[Maxsize];//静态数组 int front, rear;//队头指针 队尾指针}SqQueue;顺序队列的初始化队尾指针指向队尾元素的下一个位置void InitQueue(SqQueue& Q)//初始化队列{ Q.rear = Q.front = 0;//初始时队列的队头队尾指向0}判断顺序队列是否为空队列为空的条件:Q.rear==Q.fro
2021-04-04 19:20:23
341
原创 数据结构学习笔记——栈
顺序栈顺序栈的定义typedef struct{//顺序栈结构体 int data[Maxsize];//静态数组存放栈中元素 int top;//栈顶指针}Sqstack;top指针指向栈顶元素top指针初始化为-1,压入元素后指针指向栈顶空间顺序栈的初始化void InitStack(Sqstack& S)//初始化栈{ S.top = -1;//初始化栈顶指针}顺序栈的判断空栈bool StackEmpty(Sqstack S)//判断栈是否为
2021-04-04 17:19:24
266
原创 数据结构学习笔记——线性表
线性表的顺序表示(顺序表)特点:1.随机访问:即可以在O(1)时间内找到第i个元素2.存储密度高,每个节点只存储数据元素3.扩展容量不方便(即使采用动态分配,扩展长度的时间复杂度也比较高)4.插入、删除操作不方便,需要移动大量元素顺序表的静态分配#define MAXsize 100 //静态顺序表的最大容量typedef struct//静态顺序表结构{ int data[MAXsize]; int length;}Sqlist;静态顺序表初始化void Static_Ini
2021-03-17 18:39:50
326
原创 STM32 与触摸屏 触摸检测问题
在使用正点原子的电容型触摸屏的时候,遇到程序运行太快,当我按下一次的时候就已经执行检测按下后执行的函数好几次例如当按下触摸屏时候让一变量自增一,但是刚开始我按一下改变量就自增好几次最后加上了触摸屏的松手检测u8 Get_keynum(){ u8 key=0; tp_dev.scan(0); if(tp_dev.sta&TP_PRES_DOWN) //触摸屏被按下 { ...
2020-04-22 19:13:07
2462
2
原创 ESP8266 NONOS SDK入门——station+tcp cilent
该程序学习于https://blog.youkuaiyun.com/qq_41068712/article/details/86154620的博客调用如下头文件其中还需要在espconn.h中include ip_addr.h代码如下os_timer_t checktimer_wifestate;//定时器结构体struct espconn user_tcp_conn;//tcp结构体void ...
2020-03-08 20:05:19
438
1
原创 ESP8266 NONOS SDK——AP+TCP
首先导入espconn.h文件 该文件的使用还需要再该头文件内部添加#include “ip_addr.h”否则espconn头文件会报错缺少ip_addr类型struct espconn user_tcp_espconn;struct softap_config apcofig;//ap结构体void ICACHE_FLASH_ATTR server_sent(void *arg) //T...
2020-03-07 21:20:23
377
原创 ESP8266 NONOS SDK入门——PWM
先定义通道参数数组和pwm占空比指针在这里插入图片描述设置pwm通道并使能在这里插入图片描述这里我加入了软件定时器中断实现呼吸灯软件定时器代码部分软件定时器中断回调函数使用到了如下API...
2020-03-07 13:02:39
554
原创 ESP8266 NONOS SDK入门——硬件定时器
硬件中断定时器接口位于dirver_lib下hw_timer.c中注意使用前先include相应头文件第一步初始化定时器第二步设置定时器中断回调函数需要自己编写中断回调函数我写的功能是LED状态取反第三步使能定时器附代码如下注意:固应有void ICACHE_FLASH_ATTR...
2020-03-06 18:54:04
563
1
原创 ESP8266 NONOS SDK人门——软件延时
esp8266自带软件延时功能这里我们用软件延时方式实现led的亮灭我们首先看乐鑫的NONOS API文档所以若需要时间的精确定时,建议使用硬件定时器软件延时的设置步骤1.先定义一个定时器结构体和LED状态标志变量2.写好回调函数,其内容为定时器溢出时所需要实现的功能3.软件定时器初始化这个是软件定时器的设置APIos_timer_setfn 必须在 timer 未使能的情况下调...
2020-03-05 12:50:04
496
原创 ESP8266 NONOS SDK 入门——点亮LED
参考乐鑫官网的资料查看NONOS的APIESP8266芯片上自带一个led连接了GPIO2 用作状态指示这里我们控制GPIO2口
2020-03-04 18:09:24
419
原创 ESP8266 NONOS SDK入门——环境搭建
编译环境搭建我使用的是安信可的一体化环境(基于eclipse)可以在安信可的官网中下载并按照他的教程来安装SDK模板再安信可的一体化环境安装后其安装目录下自带NONOS和RTOS SDK(备份文件是我自己复制的)这个文件安信可已经进行了相应的修改可以直接导入工程导入工程步骤参考安信可的一体化环境使用文档也可以自己去乐鑫官网下载SDK(不同版本的导入方法不同)(本人用乐鑫官方的SDK...
2020-03-04 17:53:59
1646
原创 单片机按键扫描函数
按键扫描(支持连续按)检测按键IO口的高低电平u8 KEY_Scan(void){ if(KEY按下) { delay_ms(10);//延时10-20ms 消蚪 if(KEY确实按下) { return KEY_Value; } return 无效值; }}按键扫描(不支持连续按)检测高低电平的变化(上升沿,下降沿)u8 LEY_Scan(void...
2020-01-16 14:02:27
4785
1
原创 ISIS支持的文件
ISIS支持以下几种文件1.Design files(.DSN)包含了电路的所有信息2.Backup files(.DBK)每次SAVE的时候会产生3.Section files(.SEC)电路的某一部分可以保存为这个文件类型,以后可以通过import调用4.Module files(.MOD)在分等级的电路中用于其他特性的连接5.Library files(.LIB)符号和元件库所有的...
2019-11-19 23:07:39
717
原创 ESP8266 AT指令配置入门
ESP8266wife的三种设置模式station模式(客户端)简称STA,在此模式下ESP8266相当于一个客户端,可以连接到服务端的wife。STA模式下模块本身不接受其他客户端的无线接入,但是可与连接APSoftAP模式(服务端)简称AP,在此模式下模块本身相当于一个路由器,自身作为一个热点,可以让其他客户端连接,允许其他客户端口接入,AP和AP之间允许相互连接。STA+AP模...
2019-09-30 18:00:17
5300
原创 css的简单入门
css的简单语法在一个style标签中,去编写css内容,最好将style标签写在这个head标签中<style>选择器{ 属性名称:属性的值 属性名称2:属性的值2}</style>css选择器帮助我们找到我们要修饰的标签或者元素元素选择器:元素的名称{ 属性名称:属性值; 属性名称:属性值;}id选择器:以#开头(id在整个页面中必...
2019-08-05 17:36:10
123
原创 HBuilser--常用的快捷键
常用的快捷键ctrl+D 删除光标当前所在的行ctrl+shift+R 复制当前行到下一行ctrl+Enter 将光标移动到下一行ctrl+shift+Enter 将光标移动到上一行ctrl+shift+/ 注释当前行ctrl+R 运行/刷新 当前网页...
2019-08-04 12:07:03
644
原创 对象的克隆
对象的克隆对象的浅克隆:对象浅克隆要注意的细节:1. 如果一个对象需要调用clone的方法克隆,那么该对象所属的类必须要实现Cloneable接口。2. Cloneable接口只不过是一个标识接口而已,没有任何方法。3. 对象的浅克隆就是克隆一个对象的时候,如果被克隆的对象中维护了另外一个类的对象,这时候只是克隆另外一个对象的地址,而没有把另外一个对象也克隆一份。4. 对象的浅克隆也...
2019-08-03 12:27:00
103
原创 bat文件处理
bat处理文件: bat处理文件就是可以一次性执行多个命令的文件。为什么要学bat处理文件, 快速运行一个软件我一般都会把软件打包一个jar包。jar双击可以运行仅对于图形化界面的软件起作用,对于控制台的程序是不起作用的。对于控制台的程序我们可以使用bat处理文件快速启动一个项目。如何编写bat处理文件呢?步骤: 编写一个自定义的文本文件,然后把后缀名改成bat即可,然后把你所要执行的命...
2019-08-03 12:06:39
144
原创 Exception in thread "main" java.lang.NoClassDefFoundError--问题解决
cmd控制台运行java文件时遇到Exception in thread “main” java.lang.NoClassDefFoundError: learn01 (wrong name: learn01/learn01)问题后面通过查找资料发现应该在运行时写入完整名称即 learn/learn01的格式然后运行出现以下问题解决方法是退出该文件包的文件再运行...
2019-08-03 11:15:34
2008
原创 网络通讯--tcp协议
tcp协议UDP通讯协议的特点:1. 将数据极封装为数据包,面向无连接。2. 每个数据包大小限制在64K中3.因为无连接,所以不可靠4. 因为不需要建立连接,所以速度快5.udp 通讯是不分服务端与客户端的,只分发送端与接收端。TCP通讯协议特点:1. tcp是基于IO流进行数据 的传输 的,面向连接。2. tcp进行数据传输的时候是没有大小限制的。3. tcp是面向连接,通过...
2019-07-24 18:30:42
236
原创 网络编程--群聊
群聊使用upd协议和多线程实现群聊功能主函数:package cn.itcast.udp;public class ChatMain { public static void main(String[] args) { ChatReceive chatReceive = new ChatReceive(); chatReceive.start();//开始接收线程 ...
2019-07-24 17:04:18
218
原创 网络通讯--udp协议
在java中网络通讯业称作为Socket(插座)通讯,要求通讯 的两台器都必须要安装Socket。不同的协议就有不同 的插座(Socket)UDP通讯协议的特点:1. 将数据极封装为数据包,面向无连接。2. 每个数据包大小限制在64K中3.因为无连接,所以不可靠4. 因为不需要建立连接,所以速度快5.udp 通讯是不分服务端与客户端的,只分发送端与接收端。比如: 物管的对讲机, 飞...
2019-07-24 16:49:44
354
原创 网络编程--ip
网络编程网络编程: 网络编程主要用于解决计算机与计算机(手机、平板…)之间的数据传输问题。网络编程: 不需要基于html页面就可以达到数据之间的传输。 比如: feiQ , QQ , 微信…网页编程: 就是要基于html页面的基础上进行数据的交互的。 比如: 珍爱网、 oa(办公自动化)、 高考的报告系统…计算机网络: 分布在不同地域 的计算机通过外部设备链接起来达到了消息互通、资源共享的...
2019-07-24 15:31:54
261
原创 IO流--转换流
转换流:输入字节流的转换流:InputStreamReader 是字节流通向字符流的桥InputStreamReader输出字节流的转换流:OutputStreamWriter 可以把输出字节流转换成输出字符流 。转换流的作用:1. 如果目前所 获取到的是一个字节流需要转换字符流使用,这时候就可以使用转换流。 字节流----> 字符流2. 使用转换流可以指定编码表进行读写...
2019-07-23 16:38:06
86
原创 IO流--打印流pritStream
打印流printStream打印流(printStream) 打印流可以打印任意类型的数据,而且打印数据之前都会先把数据转换成字符串再进行打印。class Animal{ String name; String color; public Animal(String name,String color){ this.name = name; this.color =...
2019-07-23 15:25:56
120
原创 Map--properties(配置文件类)
Properties(配置文件类): 主要用于生产配置文件与读取配置文件的信息。Properties要注意的细节:1. 如果配置文件的信息一旦使用了中文,那么在使用store方法生成配置文件的时候只能使用字符流解决,如果使用字节流生成配置文件的话,默认使用的是iso8859-1码表进行编码存储,这时候会出现乱码。2. 如果Properties中的内容发生了变化,一定要重新使用Propert...
2019-07-23 14:58:58
1148
原创 IO流--对象的输入输出流
对象的输入输出流对象的输入输出流 : 对象的输入输出流 主要的作用是用于写对象的信息与读取对象的信息。 对象信息一旦写到文件上那么对象的信息就可以做到持久化了对象的输出流: ObjectOutputStream .对象的输入流: ObjectInputStream对象输入输出流要注意的细节:1. 如果对象需要被写出到文件上,那么对象所属的类必须要实现Serializable接口。 Ser...
2019-07-23 14:21:07
135
原创 IO流--SequenceInputStream类(序列流)
序列流SequenceInputStream// 使用SequenceInputStream合并文件。 public static void merge2() throws IOException{ //找到目标文件 File inFile1 = new File("F:\\a.txt"); File inFile2 = new File("F:\\b.txt"); File ...
2019-07-23 13:39:24
191
原创 装饰者设计模式
装饰者设计模式装饰者设计模式:增强一个类的功能,而且还可以让这些装饰类互相装饰。装饰者设计模式的步骤: 1. 在装饰类的内部维护一个被装饰类的引用。 2. 让装饰类有一个共同的父类或者是父接口。需求1: 编写一个类拓展BufferedReader的功能, 增强readLine方法返回 的字符串带有行号。 需求2:编写一个类拓展BufferedReader的功能, 增强read...
2019-07-22 18:16:08
93
原创 IO--使用字符流做一个注册登入程序
package cn.itcast.buffered;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import...
2019-07-22 17:07:19
216
原创 IO流--拷贝图片
package FILE;//将图片拷贝import java.io.*;public class file01 { public static void main(String[] args){ FileInputStream ip = null; FileOutputStream op =null; try{ File file = new File("D:\\1...
2019-07-21 15:57:08
144
原创 IO的异常处理
package cn.itcast.exception;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import javax.management.RuntimeErrorException;/* IO异...
2019-07-21 15:45:49
198
原创 IO流--字节流
字节流`输入字节流--------| InputStream 所有输入字节流的基类 抽象类------------| FileInputStream 读取文件数据的输入字节流使用FileInputStream读取文件数据的步骤:1. 找到目标文件2. 建立数据的输入通道。3. 读取文件中的数据。4. 关闭 资源.FileInputStream中read()方法:从此输入流中...
2019-07-21 15:23:50
158
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人