自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 单链表的基本操作

建立单链表的头插法,尾插法,插入,删除操作- a.单链表的创建单链表其实就是系列结构体通过指针连接起来,可以分为两种,一种带头节点,一种不带头节点。具体定义如下。struct LinkList{ char name[100]; char num[100]; struct LinkList *next;}(一)使用头插法建立一个带头节点的单链表struct Linklist ...

2020-03-11 19:22:55 226 1

原创 QT常用快捷键

自己总结的一些很实用的快捷键,不全,但常用

2022-07-20 21:18:19 2508

原创 K个有序链表合并

这个算法题目是这样:合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[1->4->5,1->3->4,2->6]输出: 1->1->2->3->4->4->5->6来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/merge-k-sorted-lists对于这个算法题目,合并k个升序排序链表,首先可以把问题简化,先想清楚合并2个排

2020-08-02 15:08:20 383

原创 邻接表

对于无向图(图2)的存储,最常用的存储方式就是邻接表。那么什么是邻接表呢?如图2,它是通过数组和链表的结合。图的顶点用一个一维数组存储,当然,顶点也可以用单链表来存储,不过数组可以较容易地读取顶点信息,更加方便。图中每个顶点Vi的所有邻接点构成一个线性表,由于邻接点的个数不确定,所以我们选择用单链表来存储。这样一个邻接表就生成了。举个具体的例子:如图2中v0顶点,相连有三条边(v1,v0)(v2,v0),(v3,v0)。最后v0first指针依次指向就是1,2,3。图1 邻接表图2 无向图具

2020-06-29 11:48:19 881

原创 栈实现的二进制转十进制和八进制

栈实现的二进制转十进制,二进制转八进制一个二进制的数转换成一个十进制的数很简单,只需要利用一个栈就可以了。当我们输入“11001”这样一串二进制数据,当入栈时,我们把高位先入栈,低位后入栈,然后再出栈。由于栈的特性,后进先出,先出栈的就是低位二进制数。然后按照公式乘以2 ^ 0, 2 ^ 1,2 ^ 2……等等即可。重点是二进制转换到八进制,这里利用了两个栈,先将二进制数入栈,然后出栈,再压入...

2020-04-09 12:23:13 430

原创 维吉尼亚加密算法

维吉尼亚加密算法这个算法思想就是:当我们随机输入的要加密的一串明文,随机生成一个key,然后将对应的明文移动key位。最后得到加密后的密文。例如“HELLO”,随机生成KEY架设是‘2’,‘3’,‘4’,‘-1’,‘0’。那么得到的密文就是“JHPKO”。这里的KEY可正可负。本程序通过srand()和time()函数来生成伪随机数模拟KEY。代码如下:#include <stdio.h...

2020-04-06 16:38:06 1884

原创 判断链表是否成环

判断链表有无环一般判断链表有无环,有两种方法:1、指针计步法。何为计步法呢?就是定义两个指针,p,q。当q每次移动一个位置,p随之从头开始移动到q的位置。当两个指针第一次相遇就分别记下p,q所走的步数。如果有环,q移动到末尾然后再到达一个中间位置,p从头开始移动到q的位置时,p,q第一次相遇时,他们分别走的步数肯定不一样。2、快慢指针法。定义两个指针,fast,low。fast每次走两步...

2020-04-02 22:42:58 346

原创 静态链表写通讯录

静态链表写通讯录C语言在没有使用指针之前,前辈们为了弥补数组的不足,就发明了静态链表。静态链表与动态链表最大的不同就是没有使用指针,没有使用malloc函数来动态申请内存,故被称之为静态链表。而它与数组最大的不同就在于,它多了一个游标cur作用类似与链表指针,用来指向下一个节点。让数组的每个元素由data和cur两部分组成,其中cur相当于链表的next指针,这种用数组描述的链表叫做静态链表,...

2020-03-29 15:02:46 153

原创 双链表写通讯录

双链表写通讯录本人用双链表写的一个通讯录,代码如下:#include <stdio.h>#include <stdlib.h>#include <string.h>struct Contacts *head = NULL;//定义头指针typedef struct Contacts{ char name[100]; char number[10...

2020-03-25 20:44:45 779

原创 单链表写通信录

单链表写通讯录单链表实现通讯录,增加,删除,更改一个联系人等功能。其中增加了一个内存池功能,用于对废弃内存的回收和利用。#include<stdio.h>#include<stdlib.h>#include<string.h>#define MAX 1024void addPerson(struct Presonlist **node);//添加一个...

2020-03-24 14:47:42 218

原创 逆波兰表达式

逆波兰表达式#百度百科解释:逆波兰表达式又叫做后缀表达式。在通常的表达式中,二元运算符总是置于与之相关的两个运算对象之间,这种表示法也称为中缀表示。波兰逻辑学家J.Lukasiewicz于1929年提出了另一种表示表达式的方法,按此方法,每一运算符都置于其运算对象之后,故称为后缀表示。#逆波兰表达式的原理:正常表达式与逆波兰表达式对比:正常—>逆波兰1 + 2—>1 2 +...

2020-03-23 23:33:57 200

原创 c语言的文件操作

1、文本,二进制文件操作:打开,关闭,读写字符,读写字符串,读写数据块,文件位置指针定位。C语言的文件操作。C语言对于文本文件和二进制文件的操作:函数列表如下:|文本文件: | 二进制文件||-打开,关闭:-|–|| | |fopen();fclose();读写字符:fgetc();fputc();读写字符串fgets();fputs();读写数据块fsc...

2020-03-15 18:03:45 204

原创 动态二维数组的建立

一、使用malloc函数建立M*N的int类型动态二维数组的三种方法:a、二级指针。首先定义一个指向一块M*Sizeof(int *)大小内存空间的指针的指针(二级指针)。接下来再次,对于这M个指针进行内存分配(指定大小)。p = (int **)malloc(m*sizeof(int *));for (i=0;i<m;i++){*(p+i)=(int *)malloc(n ...

2020-03-09 11:21:56 2544

C语言学习笔记.pdf

C语言指针,数组,结构体链表,函数的总结

2019-09-25

毕业设计-智能光照控制系统

这是我大学本科毕设所有的东西了,最后85分过,论文要求如下1.基于ZigBee无线通信技术和微控制器实现对LED灯的智能控制,实现LED灯的智能照明控制。 2.可根据光照度(区分白天和黑夜)自动控制灯的亮度或开关。 3.可以通过遥控或手动按键实现灯光强度和开关的控制。 4.按照学校要求撰写毕业设计论文。有需要的下载

2019-08-01

PADS学习笔记.md

十天PADS学习笔记,本人自学了十天,从画封装到原理图到PCB中间自己学会的一些基本操作。

2019-08-01

智能光照控制系统的设计全部代码

这是我的毕业设计代码,主要功能是实现根据自然光照强度不同智能调节LED光照强度,同时通过ds1302根据不同时间(白天和黑夜)来调节光线,还有一个部分是lcd1602,可以显示光照强度

2019-01-09

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除