自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 前端js摄像头拍照,后端java调用百度api进行人脸识别登录

文章目录0. 需求1. 前端实现1.1 如何调用摄像头1.2 如何用ajax将图片从前端传到后端2. 后端实现2.1 如何接收ajax上传的图片2.2 如何调用百度人脸对比api3. 后端难点3.1 图片怎么存mysql数据库3.2 图片怎么取出数据库4. 细节问题4.1 百度api访问频率限制4.2 为啥改了后端代码前端没有任何改变4.3 我有一个form表单负责用户输入,怎么让它始终在屏幕最底端?5. end0. 需求在前端调用摄像头进行用户拍照,将照片传至后端,后端调用百度人脸对比api进行人相对

2021-06-19 16:53:54 2763 1

原创 c++俄罗斯方块 完整源代码

文章目录1. 功能描述2. 源代码3. 运行截图4. 结尾1. 功能描述2. 源代码#include<iostream>#include<string>#include<cstdlib>#include<windows.h>#include<ctime>#include<conio.h>#include<cstdio>using namespace std;class Tetris{priva

2021-05-29 15:19:46 18443 16

原创 彻底卸载Android Studio的正确方式

0.前言最近换了电脑,要在新电脑上安装Android studio结果一直有各种奇怪的问题,装了几个小时都没装好。尝试过两次后我打算彻底删除它重新安装,这样就可以在刚开始的选择界面下载Android1.解决方法...

2021-04-05 22:37:50 29050 22

原创 二进制乘法、除法的计算过程解读

0. 问题描述本文包括4位二进制乘法(4位乘4位)和8位二进制除法(8位除4位)的详细计算过程。1.创作原因计组实验中的涉及到此问题,当时上网查阅了许多博客和资料都没能理解这两者的计算过程,因此想写一篇博客为后来者提供便利,少走一些弯路。2.二进制乘法被乘数设为5:101B乘数设为7:111B开始计算之前设置一个变量N保存乘法的最终结果,初始化为0。则有详细的计算过程如下:判断乘数111B的最后一位为1,则N加上被乘数,N更新为0+5=5乘数右移一位更新为11B,被乘数左移一位更新为1

2021-01-18 20:55:11 16889 8

原创 java 画板分析设计及完整源码

文章目录1.画板构成及架构方式1.1 构成1.2 架构方式2.一个优化2.1 窗口重绘机制2.2 引发的问题2.3 优化3.知识点梳理4.源代码4.1 runtime environment4.2 source code完整源代码放在最后1.画板构成及架构方式1.1 构成首先来看一下我所写的画板项目由哪些包构成:entry包是程序的入口(也就是main方法所在的地方)它的内容十分简单,如下:然后先说window包,顾名思义这个包里面定义了我们画板窗口的显示外观,我们可以称这一部分为“前端

2020-11-12 21:06:25 1671

原创 最大堆 维护及其建立 堆排序算法

1.最大堆父节点的值一定≥\ge≥其子节点,且堆的根节点是最大的。2.维护最大堆约定:1.用数组A来存储堆2.参数i表示调整堆上该节点,以保持堆的性质(此处的节点值可能小于其儿子节点,如果其存在儿子节点的话)伪代码:MAX-HEAPIFY(A, i) lSon = left-son(i) rSon = right-son(i) // 判断左儿子节点 if lSon<A.length and A[i]<A[lSon] largest = lSon else la

2020-11-09 22:01:38 827

原创 Strassen 矩阵乘法

最普通的矩阵乘法,需要乘n3n^3n3次,时间复杂度为O(n3)O(n^3)O(n3)分治递归计算矩阵相乘复杂度也为O(n3)O(n^3)O(n3),没有体现优越性使用Strassen计算每一步递归中乘法次数由8次变为7次(以增加减法次数为代价),时间复杂度下降为O(nlg7)O(n^{lg7})O(nlg7)在矩阵维数很大时增加一次乘法的代价远超过多次加减法的代价。...

2020-11-09 21:10:27 515

原创 最大子数组问题 C++分治与动态规划求解

0.问题定义1.分治解法代码如下:#include <iostream>using namespace std;struct info { int sum, low, high; info(int sum_, int low_, int high_) : sum(sum_), low(low_), high(high_) {}};class maxSubarrayProblem {private: int *arr; int size;public: maxS

2020-11-09 17:06:45 994

原创 Java 学生选课系统 源代码

需求Java实现学生系统(实际上是学生、教师管理系统+学生选课系统两部分构成)需求如下:程序设计为让上述要求展开。源代码由于代码量较大,所有代码以百度网盘链接形式给出(永久有效)。百度网盘链接提取码:0713解压后里面的内容应该是这样的:它包含了所有部分的代码。这里我使用eclipse编程,他们的组织形式是:按照这个形式组织好,就可以运行啦,14+的jdk版本没有任何报错。我的jdk版本:效果简单(真的很简单)展示下运行效果。好了,我很懒所以就贴这些。有

2020-11-03 15:39:06 15873 80

原创 汇编语言:x86汇编指令大全及其注意事项

使用最精炼的语言,记录我遇到的所有常用或不常用或极其重要的汇编指令及其注意事项,以方便自己和读者进行查阅,如有错误敬请指证。Part 1积少成多,持续更新。(这将会是一个极其漫长的过程)表格中各条指令的顺序根据笔者所认为的重要或常用程度进行排序,仅供参考。Part 2本表格中所涉及的F是指状态寄存器,CF指进位标志位,其它以此类推。指令作用注意事项示例mov dest, src传送指令1.dest和src不能同时为存储器操作数2.CS不能作为dest3.段寄存器之间不

2020-05-15 15:30:56 1224

原创 汇编语言:文件复制源码

这篇是一个复制文件的汇编程序,它的作用是将当前目录下的一个文件的内容复制到另一个文件中。这个程序有以下几点需要注意的地方:文件最大允许的字节数我设置为512 bytes,可根据实际情况自行变动复制操作的源文件和目标文件的文件名都可以由用户输入。注意:源文件必须存在,否则报错;目标文件可以不必存在,不存在则创建,存在则覆盖。注意dos中断的3c号创建文件功能的一些限制条件,需要将cx置为零,其含义是所创建文件的属性。需要特别关注。下面给出源代码:...

2020-05-14 14:56:39 1268

原创 汇编语言:复合表达式计算器

这一篇是一个可以计算简单复合表达式的汇编程序。有错误烦请指正。由于想用汇编来做完整的符合表达式计算还是一件很麻烦的事,所以此次的汇编程序有诸多限制:不能出现负数(负数的前导负号会被认为是减号)不能出现括号或者用括号来划定优先级复合计算表达式必须以’#'结尾,否则程序无法停止可以允许出现的符号是数字、+、-、*、/ 这几种目前的限制大致就是以上几点,而且我也不准备继续再继续改进、完善这个程序了。因为这种程序的改进实质上只是在已知知识的基础上进行的重复劳动而已,没有必要。下面是程序源码:ds

2020-05-12 13:17:26 753 2

原创 求解gcd最大公约数的两种算法

文章目录1.更相减损术2.辗转相除法3.两种算法的比较1.更相减损术即:辗转相减法。是由我国古代《九章算术》提出的一种求解最大公约数(Grand Central Dispatch)的算法。代码示例:int f(int a, int b) { if (a==b) return a; if (a<b) { //交换值 a^=b; b^=a; a^=b...

2020-05-02 14:38:43 391

原创 汇编语言:循环程序设计示例

文章目录1.题目2.汇编代码3.总结1.题目作为演示,用以下题目来作为示例进行编程:  已知内存DATA开始的存储区存放若干个字节数据,数据个数在 COUNT单元中存放。编制程序求其中正数平均值及负数平均值, 并分别存入MEANP和MEANM单元。这个程序并不十分复杂,但是有两个注意点:1.计算平均值取整数部分即可2.所有数据的和用字单元存放(这会给我们带来一些麻烦)麻烦在于负数的求...

2020-04-17 22:08:49 3237

原创 MATLAB app designer GUI设计

利用MATLAB app designer进行GUI程序设计入门级问题汇总(我的课题是基于malthus和logistic模型的人口预测程序)文章目录1.文章内容概述2.简单回调、获取组件上数值或状态2.1 组件回调2.2 获取组件数值2.3 改变组件大小,字体3.msgbox对话框显示文本示例3.1 各种基础类型对话框3.2 msgbox类型的对话框4.全局变量5.如何打包exe二进制文件6...

2020-03-14 17:21:56 7114

原创 汇编语言:简单的16位二进制相加程序

这可以说是第一个我自己写的汇编程序,虽然很短。。功能很简单,实现两个16位二进制数相加即可。step 1.写汇编代码下面是实现功能的相应代码:DSEG SEGMENTDATA_1 DW ?DATA_2 DW ?DSEG ENDSSSEG SEGMENT STACKTOP_PTR DB 20 DUP(0)SSEG ENDSCSEG SEGMENT ASSUME DS : DS...

2020-03-04 16:36:15 10162 3

原创 C语言:常量字符串、字符数组的一个误区

遇到了一个有关常量字符串的问题,发现我对此的理解还不是很清楚,甚至存在误区!!文章目录1.字符串常量不可修改2.错误示例3.使用字符数组char a[] = "abcd";为什么不会出错?4.总结1.字符串常量不可修改当我们使用char *p = “abcd”;定义一个字符型指针指向"abcd"时,使用指针p试图去修改字符串的内容是错误的!看图:可以看到出现了segmentatio...

2020-03-01 15:02:56 874 1

原创 汇编语言:8421 BCD码加减法的修正问题

文章目录1.文章内容概述2.BCD码加法修正2.1调整方法3.BCD码减法修正3.1调整方法4.更特殊:21 - 45 = -24类的修正方法4.1调整方法1.文章内容概述首先要明白,BCD码的取值是从0000到1001(也就是十进制的0到9)有时对BCD码进行加法或减法会有这个范围以外的值出现,需要人为调整方能得出正确的结果。而本文即讲对此的修正方法。2.BCD码加法修正举例:...

2020-03-01 12:09:00 12384 6

原创 C语言fgets按行读取文件,末尾的换行符问题

之前的博客提到了怎样对长度不确定且无法估计的文本文件进行按行读取的问题,这次我发现了一个每一行的末尾换行符处理的问题以及fgets的一个特性,这都是我之前没有注意到的地方。文章目录1.每行末尾换行符的处理1.1解释1.2代码2.fgets末尾'\0'问题2.1运行结果3.总结1.每行末尾换行符的处理首先,问题的导入在于我写的一个小程序。1.我在一个文本文件中打字,然后想用fgets读取第一...

2020-02-28 19:30:45 25926 10

原创 C语言:每行字符数量不确定时,怎样按行读取文本文件

我当然知道简单的按行读取文本文件的博客在csdn上俯拾皆是,无非用fgets,fscanf,或者fread,但是这都是在我们已经知道或者能够大概估计每行所含字符数上限的情况下的做法,如果我们不清楚且无法估计每行有多少个字符那我们该怎么做呢??文章目录1.思路2.代码3.程序运行效果4.结束语1.思路1.很多按行读取的博客都使用char * fgets(char *__restrict__ ...

2020-02-28 01:20:11 2601 3

原创 C语言feof重复读取的问题

文章目录前言问题解释解决方法总结前言最近一个大一的朋友找我说是不会c语言的文件读写,我就想着给他写个demo,没想到却遇到了一个问题(之前也遇到过,但是没有记录下来,现在居然错了第二次了,所以现在记录下来)。问题用feof来作为循环控制条件时会重复读取一次文本末尾的内容下面是我写的错误demo:#include <stdio.h>#include <stdlib.h...

2020-02-25 13:53:33 3471 1

原创 (十五)数据结构插入排序之直接插入排序

直接插入排序文章目录1.直接插入排序算法描述2.排序代码3.运行效果展示4.时间复杂度分析5.结束语1.直接插入排序算法描述为了方便理解我们可以把待排序元素分在两个集合中,在排序开始前,第一个集合为空(第一个集合中存储的就是有序的数据元素),第二个集合存储还未进行排序的元素。那么排序的过程就是从第一个元素开始,加入到第一个集合中(第一个集合无需比较),第二个元素从头开始遍历第一个集合,如果...

2020-02-22 23:47:13 218

原创 (十四)数据结构之平衡二叉树

利用平衡二叉树进行动态查找文章目录1.什么是平衡二叉树2.与二叉排序树的关系3.算法设计与分析(过程图解)4.难点分析5.代码实现6.运行截图7.题外话8.结束语1.什么是平衡二叉树平衡二叉树也是树的数据结构中很重要的一个组成,底部实现方面,采用二叉链表来存储二叉树;节点插入删除方面,特点是会根据当前情况调整二叉树的形态使我们的二叉树始终满足一定的要求和规则,大大提高了二叉树应用的普遍性和查...

2020-02-21 14:37:31 325

原创 (十三)数据结构动态查找之二叉排序树查找

数据结构之排序二叉树动态查找文章目录1.内容概述2.算法分析3.代码实现4.实际应用5.结束语(一点祝愿)1.内容概述 这篇博客主讲:1.怎么建立排序二叉树 2.怎么实现动态查找(即插入与删除)3.性能如何2.算法分析 算法分析:1.建立排序二叉树。所谓排序二叉树在我们上一篇博客中也有提到,实际上可以说排序二叉树就脱胎于折半查找,只是这一章以树的数据结构来存储信息并且也可以给我们提供动...

2020-02-13 21:07:39 1447

原创 (十二)数据结构之静态查找

数据结构静态查找:顺序查找、折半查找、斐波那契查找、索引顺序表查找文章目录1.内容概括2.顺序查找算法分析2.1优缺点2.2代码实现2.3一点改进3.折半查找算法分析3.1 优缺点3.2代码实现4.*斐波那契查找算法分析4.1优缺点4.2代码实现5.索引顺序表查找算法分析5.1优缺点5.2代码实现5.3一点改进6.End1.内容概括 大致内容: 介绍几种静态查找方法的算法分析,代码实现过程以...

2020-02-13 00:27:05 535

原创 C语言C++编程软件推荐及下载方式

几款常用C语言C++编程软件推荐及详细下载过程文章目录0.什么是IDE0.什么是IDE 1.既然要学习编程那么编程软件对程序员而言是十分重要的,它为我们提供人性化的项目文件创建方式,编译器为我们提供语法错误的实时检查,它就是我们盖建高楼大厦的工具,没有编程软件无论是开发效率还是开发速度都会大大缩水,所以对编程软件的了解以及使用是每一位程序员必须要掌握的。 2.相信大家经常听到别人说到IDE...

2020-02-08 23:01:14 12483 1

原创 (十一)图的深度遍历、广度遍历

利用邻接表对无向连通图进行深度遍历和广度遍历文章目录利用邻接表对无向连通图进行深度遍历和广度遍历1.深度遍历过程详解2.广度遍历过程详解3.代码实现4.一点注意5.End1.深度遍历过程详解 1.过程详解:首先选择一个节点开始遍历,选择与其相邻的一个节点,然后访问此节点啊,再次选择与先择选中的节点相邻的节点进行访问,重复此过程直到某一个节点的所有邻接点都已经被访问过。此时进行回溯,回溯到上一...

2020-02-07 19:00:13 544

原创 (十)数据结构之十字链表

文章目录1,内容概述2,什么是十字链表3,十字链表应用4,十字链表算法分析5,实现代码6,运行截图7,一点注意8,ending1,内容概述 主要介绍数据结构图的存储结构之一:十字链表的实现。2,什么是十字链表 十字链表是图的邻接表与逆邻接表相结合的一种存储结构。(传送门 :邻接表、邻接矩阵数据结构) 特点:源于邻接表、逆邻接表却胜于它们,十字链表将弧尾节点相同的弧串联在一条链表上,将弧首...

2020-02-05 00:02:47 3605 1

原创 (九)数据结构之邻接矩阵、邻接表存储图

文章目录1,邻接矩阵简述1.1,邻接矩阵适用情况2,邻接表简述2.1,邻接表适用情况3,邻接矩阵实现代码3.1,运行截图4,邻接表实现代码4.1,运行截图5,ending1,邻接矩阵简述 邻接矩阵:采用二维数组的形式来存储图或网。有向、无向图,有向、无向网都可以采用邻接矩阵的方式存储,下面分别分析一些需要注意的细节点:1,有向图:有向图的邻接矩阵不根据主对角线对称2,无向图:根据主对角线...

2020-02-03 23:33:34 1620

原创 (八)数据结构之哈夫曼(树)编码

文章目录0,一点注意1,内容概述2,建立哈夫曼树算法分析3,获取哈夫曼编码算法分析4,代码4,遇到了困难5,ending0,一点注意 需要注意的是其实我在之前就已经发过关于建立哈夫曼树,获取哈夫曼编码的的博客(哈夫曼树、哈夫曼编码),这一篇文章更具体,还附带了具体的算法分析。而这一篇只是复习。1,内容概述 这篇博客主要内容是关于如何通过存有权重的数组建立哈夫曼树,并得到哈夫曼编码。2,建...

2020-02-01 22:52:47 263

原创 (七)数据结构之双向线索链表

文章目录1, 文章内容概述(利用先、中、后序双向线索链表遍历二叉树)2, 算法思路分析3,代码4,应用5,ending1, 文章内容概述(利用先、中、后序双向线索链表遍历二叉树) 这篇博客主要写在将二叉树线索化之后(分别先序、中序、后序线索化,见我之前的博客,传送门:前、中、后序线索化二叉树),根据得到的双向二叉链表来打印二叉树的具体操作。2, 算法思路分析 1.先序:先序思路和实现比较简...

2020-01-31 21:08:41 354

原创 (六)数据结构之先、中、后序线索化二叉树

文章目录1. 递归线索化二叉树算法分析2. 非递归线索化二叉树算法分析3. 二叉树线索化的应用4. 代码5. ending1. 递归线索化二叉树算法分析 采用递归线索化二叉树非常的方便简单,与三序(先、中、后)遍历二叉树的算法颇为相似。只是在遍历二叉树的过程中,如果有节点的左子树为空那么将左标记改为线索,左孩子指针指向前驱(若是第一个节点就置为空),如果节点右子树为空那么将右标记改为线索,右孩...

2020-01-30 15:41:51 458

原创 c/c++:双人对战五子棋源代码

文章目录1. 一点说明2.源文件3. 源代码4. 总结1. 一点说明 创作时间:大一。 因为创作的时候是大一,水平还有代码规范抑或算法方面都有很多不足(代码稍显冗长,请见谅!!)。但是好歹还是能够实现双人五子棋的功能,大家有需要的可以用,只需要点个红心即可~~(另外,反正我是没找到bug,时间太久我也不想去修复了…)2.源文件 代码数量比较大,因此贴一个源文件。有需要的朋友下载即可。...

2020-01-22 21:07:30 1574 2

原创 (五)数据结构之递归、非递归三序遍历二叉树

文章目录1. 递归遍历1.1 先序遍历 1.1.1 思路1.1.2 代码1.2 中序遍历1.2.1 思路1.2.2 代码1.3 后序遍历1.3.1 思路1.3.2 代码2. 非递归遍历2.1 先序遍历2.1.1 思路2.1.2 代码2.2 中序遍历 (中序相对较难一点)2.2.1 思路2.2.2 代码2.3 后序遍历 (怎么感觉比中序还麻烦...)2.3.1 思路2.3.2 代码3. E...

2020-01-21 15:15:57 324

原创 (四)数据结构之循环队列

数据结构之循环队列一个误区一点注意代码ending1. 一个误区之前不采用STL实现双端队列时我记得我就是使用了循环队列。。。其实这是不规范的(虽然说使用很灵活,但我觉得还是应该分开来,避免弄混)。所以误区就是,循环队列是不允许弹出队尾或添加队首的 ,也就是说它是最传统的队列,严格符合 “先进先出,后进后出” 的特点!2. 一点注意判断队列是否满有两种解决方法:少用一个单元...

2020-01-18 22:20:38 191

原创 (三)数据结构之静态链表

数据结构之静态链表什么是静态链表注意事项实际应用源码ending1. what is 静态链表静态链表也是链表的一种。顾名思义,静态链表与可动态开辟存储空间的动态链表相对立,它占用一段连续的存储空间,并且静态链表的 “指针” 是用整型数字代表下标来表示的,并不是真正的指针。2. 注意事项它的存储空间大小是刚开始就决定好的,虽然在存储空间占满时可以按增量扩大空间,但仍是 相对...

2020-01-18 21:11:58 343

原创 (二)数据结构之顺序线性表

(二)数据结构之顺序线性表一些注意事项代码另外1. some 注意事项线性表分为顺序和链式两种,根据具体需求来选择。顺序线性表占用一块 连续 的地址存储数据。而链式则不遵循这种在物理上的先后顺序,遵循逻辑先后。需要特别注意下标越界的情况!很容易犯错误!2. 代码(code)比较简单,没有什么好说的。#include<iostream>#include&lt...

2020-01-17 23:45:07 183

原创 数据结构:全面总结传送门

数据结构全面总结正值寒假,想花费假期15天左右的时间将数据结构这本书上所有的算法按照书的目录顺序全部用c++/c(其实这里差别不是很大)代码实现一遍,自己再次熟悉所有算法用法的同时贴出源代码帮助有需要的朋友。(我现在也不是很清楚15天时间是太多还是太少,干就完事了,加油!)后续每写一篇都将在这一篇下面附上传送门方便大家浏览~代码传送门未完待续...

2020-01-17 22:26:22 169

原创 (一)数据结构之浅谈数据结构

数据结构之浅谈数据结构什么是数据结构什么是时间、空间复杂度数据结构的应用结尾1. what is 数据结构 (or Why 数据结构)我的理解:顾名思义,数据结构就是数据存储的结构。比如要全部存储一个年级全部学生的信息(包括年级、学号、姓名以及性别等),那么这些学生的信息在内存当中存储的逻辑存储结构就可以采用顺序存储结构(结构体数组就是其中一种,如下代码作示例),也可以为链式存储...

2020-01-17 22:20:24 239

原创 c++贪吃蛇源代码 完整版

c++ 实现贪吃蛇, 完整源码文章结构:数据结构分析程序运行分析难点分析一点思考源代码总结数据结构分析:1.双向队列:这里我才用双向队列的数据结构存储蛇身节点(这里的蛇身节点我才用结构体来存储蛇身信息)(因为贪吃蛇的实现还是比较简单的,所以也只涉及到了这一种数据结构)程序运行分析程序开始用户随机按下w,a,s,d中任意按键开始游戏并且作为蛇运动的初始方向,然后进入循环持...

2020-01-10 16:26:26 87325 76

空空如也

空空如也

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

TA关注的人

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