自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(428)
  • 资源 (10)
  • 收藏
  • 关注

转载 Kendryte K210板级支持包说明

Kendryte K210板级支持包说明

2022-07-19 01:39:57 1370

原创 javascript异步调用机制

对于javascript执行机制的理解一直都是混淆不清。在面试或工作的过程中,也经常会遇到代码执行顺序或函数生命周期加载等类似的问题,这些多多少少都与javascript的执行机制相关。今天发现一篇很好的文章,欣喜之余,加以转载,供感兴趣的小伙伴学习,感谢作者分享。不论你是javascript新手还是老鸟,不论是面试求职,还是日常开发工作,我们经常会遇到这样的情况:给定的几行代码,我们需要知道其输出内容和顺序。因为javascript是一门单线程语言,所以我们可以得出结论:javascript是按照

2021-08-29 16:27:06 1583

原创 c++ make_shared

make_shared的使用:shared_ptr<string> p1 = make_shared<string>(10, '9'); shared_ptr<string> p2 = make_shared<string>("hello"); shared_ptr<string> p3 = make_shared<string>(); 尽量使用make_shared初始化C++11 中引入了智能指

2021-08-23 14:38:22 4891 1

原创 c++ 函数参数后面跟override

class A{ virtual void foo();}class B :public A{ void foo() override;} 如果一个成员函数后面跟了一个override关键字,说明这个函数将重写这个函数,下面的方式也可以进行重写。void foo();virtual foo();但是后面加override算是一种声明,此函数要重写同名函数,所以如果将函数的名字写错了比如写成f00则会报错,而下面的两个却不会,这样也可以提醒代...

2021-08-23 14:19:04 1089

原创 c++ 智能指针

前言C++里面的四个智能指针: auto_ptr, unique_ptr,shared_ptr, weak_ptr 其中后三个是C++11支持,并且第一个已经被C++11弃用。C++11智能指针介绍智能指针主要用于管理在堆上分配的内存,它将普通的指针封装为一个栈对象。当栈对象的生存周期结束后,会在析构函数中释放掉申请的内存,从而防止内存泄漏。C++ 11中最常用的智能指针类型为shared_ptr,它采用引用计数的方法,记录当前内存资源被多少个智能指针引用。该引用计数的内存在堆上分配。当新增一个

2021-08-23 14:13:23 220

原创 C++11新特性 - 使用=default生成默认构造函数

从C++基本知识说起先看下面代码:struct Point{ int x; int y;};代码内容很简单,定义了一个包含成员x,y的类Point。在需要的地方可以使用这个类: Point pt; pt.x = 10; pt.y = 10;虽然我们并没用定义Point类的构造函数,我们依然可以定义Point类的pt对象并使用它,其原因是编译器会自动生成一个缺省的的构造函数。其效果大致相当于:struct Point{ Point()...

2021-08-23 14:00:46 348

原创 git 命令

一、 Git 常用命令速查git branch 查看本地所有分支git status 查看当前状态git commit 提交git branch -a 查看所有的分支git branch -r 查看远程所有分支git commit -am "init" 提交并且加注释git remote add origin [email protected]:ndshowgit push origin master 将文件给推到服务器上git remote show origin 显示远程库o...

2021-08-05 20:26:55 153

原创 http返回状态码含义

HTTP 响应状态代码指示特定HTTP请求是否已成功完成。响应分为五类:信息响应(100–199),成功响应(200–299),重定向(300–399),客户端错误(400–499)和服务器错误(500–599)。状态代码由section 10 of RFC 2616定义信息响应100 Continue这个临时响应表明,迄今为止的所有内容都是可行的,客户端应该继续请求,如果已经完成,则忽略它。101 Switching Protocol该代码是响应客户端的Upgrade (en...

2021-07-21 10:14:30 461

原创 C/C++常见面试题整理

1、C++里面如何声明const void f(void)函数为C程序中的库函数?【参考答案】: 在该函数前添加extern “C”声明。由于编译后的名字不同,C++程序不能直接调用C 函数。2、c++中类和c语言中struct的区别(至少两点)【参考答案】:(1) c++中的类默认的成员是私有的,struct默认的是共有的。(2) c++中的类可以定义成员函数,struct只能定义成员变量。3、变量的声明和定义有什么区别?【参考答案】: 声明变量不分配空间,定义变量要分配空间。

2021-06-23 15:31:41 1815 1

原创 python 使用matlab库绘制雷达图(包含读取处理excel数据)

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport cairosvgfrom openpyxl import load_workbookimport timedef plot_radar(data,lables,id): ''' the first column of the data is the cluster name; the second column is t

2021-06-04 16:18:05 956 1

原创 c++粒子群优化算法解决多维01背包问题

#include<random>#include <iostream>#include<vector>#include<fstream>#include <time.h> using namespace std;//rewrite the <bool operator<(vector<int>&a ,vector<int>&b) { bool res = true; if .

2021-04-18 14:21:28 760

原创 PSO算法简介

粒子群优化算法(Particle Swarm Optimization,简称PSO), 是1995年Eberhart博士和Kennedy博士一起提出的,它是源于对鸟群捕食行为的研究。粒子群优化算法的基本核心是利用群体中的个体对信息的共享从而使得整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得问题的最优解。当然这是一种比较正式的说法,对于我们这些数模小白来说肯定希望有一种更加直观形象的解释。我们不妨假设自己是一只身处鸟群中的鸟,现在要跟随头领去森林里找食物,我们每一只鸟都知道自己离食物的距离

2021-04-15 11:04:42 6301

原创 linux下vi命令修改文件及保存的使用方法

进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi n filename :打开文件,并将光标置于第n行首 vi filename :打开文件,并将光标置于一行首 vi /pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename vi filename....filename :打开多个文件,依次...

2021-04-09 16:19:00 2041

原创 静态路由和动态路由

现实生活中的路由表就是路牌,让你能够到达目的地。而计算机设备的数据要到达目标也需要有"路牌",在网络中这叫路由。把数据从源设备发送到下一台设备。路由就是“找路”,是IP包转发路径信息。路由表就是多条路由信息的数据表。静态路由静态路由:静态路由是由管理员手工配置的,简单直接,是什么就是什么。缺点是当网络拓扑发生变化或有故障发生后,静态路由不会自更正,必需由管理员手工修改。适合小型网络,在路由条目较多的环境下容易出错,需要管理员手动配置,可能会出现环路。有点像下面这个场景:阿呆要去打酱油了...

2021-04-09 10:33:04 1155

原创 c++ 求任意阶矩阵行列式代码

double matrix::determinant() { // calculate the determinant of the matrix //使用定义法计算行列式 //如果只有一个元素,则返回当前元素 if (n == 1) { return values[0]; } else { //对第一行使用代数余子式的方式计算 double sub = 0; for (int i = 0; i < n; i++) { //初始化一个子矩阵 int *subMa.

2021-04-02 23:17:42 1345

原创 Http请求消息Request、响应消息Response

Request包括:请求行(request line)、请求头部(header)、空行和请求数据四个部分组成。********************  GET示例 1 GET /562f25980001b1b106000338.jpg HTTP/1.1 2 Host img.mukewang.com 3 User-Agent Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like G

2021-04-02 15:21:37 450

原创 DNS报文格式解析

DNS 分为查询请求和查询响应,请求和响应的报文结构基本相同。DNS 报文格式如图所示。上图中显示了 DNS 的报文格式。其中,事务 ID、标志、问题计数、回答资源记录数、权威名称服务器计数、附加资源记录数这 6 个字段是DNS的报文首部,共 12 个字节。整个 DNS 格式主要分为 3 部分内容,即基础结构部分、问题部分、资源记录部分。下面将详细地介绍每部分的内容及含义。基础结构部分DNS 报文的基础结构部分指的是报文首部,如图所示。该部分中每个字段含义如下。事务 I..

2021-04-02 11:15:18 569

原创 Python中报错提示:TypeError: Student() takes no arguments

Traceback (most recent call last):File "E:/learnpython/day06/15.py", line 20, in <module>tom = Student ("aaszsdf",'adfsgfd')TypeError: Student() takes no arguments检查你的def __init__(self, , ):函数是不是写成了def __int__(self, , ):如果是...

2021-03-30 20:21:36 682

原创 数学之于编程

给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m-1] 。请问 k[0]*k[1]*...*k[m-1] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。 解题思路:设将长度为 nnn 的绳子切为 aaa 段:n=n1+n2+...+nan = n_1 + n_2 + ... + n_an=n1​+n2​+...+na​

2021-03-21 12:41:31 162

原创 《剑指offer》刷题技巧(c++版)

剑指 Offer 06. 从尾到头打印链表使用vector的insert函数,通过头插法插入到数组中single element (1) iterator insert (const_iterator position, const value_type& val); fill (2) iterator insert (const_iterator position, size_type n, const value_type& val)

2021-03-20 15:10:50 269

原创 C++ 初始化二维vector

初始化vector<vector<int>> v(r, vector<int>(c, 0));resize()vector<vector<int>> v;v.resize(r); // rowfor (int i = 0; i < r; ++i){ v[i].resize(c); // column}

2021-03-19 16:15:30 465

原创 c++ string 类型操作【修改,赋值,替换】

字符串内容的修改可以通过使用多个函数修改字符串的值。例如assign(),operator=,erase(),交换(swap),插入(insert)等。另外,还可通过append()函数添加字符。下面逐一介绍各成员函数的使用方法。assign()函数使用 assign() 函数可以直接给字符串赋值。该函数既可以将整个字符串赋值给新串,也可以将字符串的子串赋值给新串。其在 basic_string 中的原型为:basic_string& assign (const E*s); ...

2021-03-19 13:30:10 4259

原创 c++ STL容器 set使用介绍

顺序容器包括vector、deque、list、forward_list、array、string,所有顺序容器都提供了快速顺序访问元素的能力。关联容器包括set、map关联容器和顺序容器有着根本的不同:关联容器中的元素是按关键字来保存和访问的。与之相对,顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的。关联容器不支持顺序容器的位置相关的操作。原因是关联容器中元素是根据关键字存储的,这些操作对关联容器没有意义。而且,关联容器也不支持构造函数或插入操作这些接受一个元素值和一个数量值得操作。

2021-03-17 16:43:56 162

原创 python 二维列表的复制问题

写程序发现python 二维列表的复制不能像一维 直接用list()或者copy()函数需要分开每一项使用如下代码temp=[cells[i][:] for i in range(len(cells))]

2021-03-03 23:09:29 1285 2

原创 使用python内置库解决排列组合问题

笛卡尔积:itertools.product(*iterables[, repeat]) 1 2 3 4 5 6 importitertools foriinitertools.product('BCDEF', repeat=2): print(''.join(i),end=",") print('\n') # 输出 BB BC BD BE BF CB CC CD CE C...

2021-02-27 17:34:40 305 2

原创 协议和协议栈的区别?

在通信领域特别是无线通信领域,我们经常会听到用到什么协议啊 ,什么协议栈方面的东西。1.首先,协议定义的是一些列的通信标注,通信的双方需要共同按照这一个标准进行正常的数据收发;在计算机通信方面,通信协议用于实现计算机与网络连接之间的标注,如果没有统一的通信协议,电脑之间的信息传递就无法识别,通信协议就是通信双方事前约定好的通信规则,可以简单的理解为各个计算机之间进行相互会话所使用的共同语言。2.协议栈是协议的具体的实现形式,我们通俗的来讲就是用代码实现的库函数,从而方便开发人员的调用..

2021-02-04 18:24:48 1384

转载 C++中::前面什么都不写

#include <iostream>using namespace std;void fun(){ cout << "::fun()" << endl;}class A{public: void fun() { cout << "A::fun()" << endl; } void test() { ::fun(); fun(); }};int main(){ A a; a.test(); sy.

2021-01-14 14:39:28 619

原创 c++ 中 lstrlen和strlen 以及sizeof的区别

strlen()是返回字符串的字节长度,lstrlen()是返回字符串的字符长度。也就是说第二个函数可能和第一个函数结果一样,如果字符串中字符单位都是单字节的话。一般来说主要区别在于ascii的字符,还是unicode或者是utf的区别。ASCII编码是一个字符占一个字节,Unicode是一个字符占两个字节.求这两种字符串的长度,要用两个函数分别来.lstrlen(),strlen()用来操作字符串或字符数组,lstrlen(),strlen()是在程序运行后得到字符串...

2021-01-14 14:33:20 538

原创 windows.h : 2.DLL注入技术

windows中的大部分应用程序都是基于消息机制的,根据不同的消息完成不同的功能。 钩子这个机制就是由windows操作系统提供的可以用来截获和监视系统中这些消息的。钩子又可以分为局部钩子和全局钩子。其中局部钩子是针对某个线程的,全局钩子是作用于整个系统的基于消息的应用。全局钩子需要使用DLL文件,在DLL中实现相应的钩子函数。一. 全局钩子注入首先介绍稍后用到的函数SetWindowsHookEX 函数//将程序定义的钩子函数安装到挂钩链中,安装钩子程序可以监视系统是否存在某些类型的

2021-01-13 17:51:18 342

原创 WINDOWS中钩子的类型

1、WH_CALLWNDPROC1、WH_CALLWNDPROC和WH_CALLWNDPROCRET HooksWH_CALLWNDPROC和WH_CALLWNDPROCRET Hooks使你可以监视发送到窗口过程的消息。系统在消息发送到接收窗口过程之前调用WH_CALLWNDPROC Hook子程,并且在窗口过程处理完消息之后调用WH_CALLWNDPROCRET Hook子程。WH_CALLWNDPROCRET Hook传递指针到CWPRETSTRUCT结构,再传递到Hook子程。CWPRE

2021-01-13 15:44:03 814

原创 windows.h : 1.资源释放

植入病毒木马时,为了使程序变得简洁不容易发现,只把exe放到用户计算机上,需要使用资源释放技术。顾名思义就是先把需要使用的资源加载到程序中,等到程序运行的时候再从程序中释放到本地计算机,相当于一个小偷把工具先藏在口袋里,进了用户的家门,保证自身安全之后再把作案工具都掏出来,减少潜入成功的概率,下面介绍这一技术的使用方法以文本文档 520.txt 作为资源,加载到程序中首先介绍几个稍后需要用到的相关函数,这几个函数都是在 windows.h 中定义的1. FindResource 函数

2021-01-13 15:04:17 504

原创 【汇编】 字符串比较

汇编语言中对于字符串的比较:1. 把两字符串的首地址分别送入 SI 和 DI寄存器2. 把样板字符串长度送入CX 寄存器3. 将方向标志位清零,使用CLD指令,并把 串指针设置为自动增量4.使用自动比较指令 REPZ CMPSB 比较两字符串下面的示例程序指定样板字符串,比较字符串通过系统功能调用输入:其中对于字符串缓冲区的设置为:; You may customize this and other start-up templates; ; The locaweixi

2021-01-09 11:06:19 4827

原创 基于地址跳转表实现汇编“SWITCH“

使用自定义地址跳转表的方式,实现switch功能;也可作为汇编测试程序,会根据parameter的值选择程序分支并通过2号系统功能实现屏幕打印出分支次序; You may customize this and other start-up templates; ; The location of this template is c:\emu8086\inc\0_com_template.txtDSEG SEGMENT TABLE DW SUB1,SUB2,SUB3,SUB4 .

2021-01-07 15:30:00 588

原创 进行比较操作时 机器寄存器的状态

主要用到三个寄存器CF (carry flag) 进位借位标志寄存器OF(overflow flag) 溢出标志寄存器SF(sign flag) 符号标志寄存器在执行计算操作之后,会影响寄存器的值,符号寄存器会保存最高位符号位的值,计算结果超过一个字节表示会把溢出寄存器置为1(对于8086处理器)1. 两个无符号数比较 两个无符号数相减,CF是借位标志。如果比较完成后CF=0,表示没有借位,说明被减数(目的操作数)比减数更大。2. 两个有符号...

2021-01-07 14:53:37 604

原创 【汇编】算术左移SAL与逻辑左移SHL的区别

1、算术左移-逻辑左移算术左移和逻辑左移一样都是右边补0: 比如 00101011算术左移一位:01010110逻辑左移一位:01010110对于二进制的数值来说左移n位等于原来的数值乘以2的n次方比如00011010十进制是26,左移两位后是01101000转成十进制是104恰好是26的4倍。ps:这种倍数关系只适用于左移后被舍弃的高位不含1的情况,否则会溢出。2、算术右移,逻辑右移逻辑右移很简单,只要将二进制数整体右移,左边补0即可如10101101逻辑右...

2021-01-06 16:57:14 5700 1

原创 【汇编】 INT 21H 命令

INT 21H是指令自动转入中断子程序的入口上面这句话很难理解吧,相信很多新手都看不懂在说什么。下面我来举个例子:以8086 CPU的汇编为例,输出一个字符串,就要使用如下指令:MOV AH,09HINT 21H假如要在显示器显示输入一个字符串,实际上就是要调用DOS系统的功能来实现。当然,DOS是包括多种功能,如接受用户输入,显示输出,输出到打印机打印等......每一个功能,都有一个编号,其中,在“显示器显示输出”这个功能的编号是09MOV AH,09H 这个就表示...

2021-01-06 14:25:43 27947 6

原创 pandas-对dataframe的操作,对行列的增加删除修改等操作

Pandas读取CSV文件主要用到的函数为:pandas.read_csv()函数原型:pandas.read_csv(filepath_or_buffer, sep=', ', delimiter=None, header='infer', names=None, index_col=None, usecols=None, squeeze=False, prefix=None, mangle_dupe

2021-01-05 11:43:26 898

原创 【汇编】在win10,intel i7环境下搭建8086处理器环境

8086模拟器汇编IDE首先可以在这里下载8086处理器的模拟软件,对于当前x86和64位系统对于寄存器的位扩展,这个软件对其进行了屏蔽可以在软件内使用和8086/8088完全相同的环境和指令系统通过新建 .asm文件,即可点击编译按钮进行编译,这个图....忘了调整一下显示像素,这个可以调整,看的就更清楚点了,最后一行使ret 也就是return ,程序出口点击compile编译之后显示:编译通过,点击运行 run就可以对程序逐条运行或者顺序执行了。左侧可以查看寄存器.

2021-01-04 17:18:40 706

原创 【汇编】intel core cpu中常用的寄存器

1、EAX编号:0存储数据范围:0x00000000 - 0xFFFFFFFF用途:累加器2、ECX编号:1存储数据范围:0x00000000 - 0xFFFFFFFF用途:计数3、EDX编号:2存储数据范围:0x00000000 - 0xFFFFFFFF用途:I/O指针4、EBX编号:3存储数据范围:0x00000000 - 0xFFFFFFFF用途:DS段的数据指针5、ESP编号:4存储数据范围:0x00000000 - 0xFFF

2021-01-04 15:43:35 926

原创 【计算机组成原理】神奇的补码

在学习补码的时候有两个问题一直没有解决1. 为什么按位取反一系列操作可以转换成正确的补码2. 用补码比原码方便之处在哪里1.按位取反操作获得补码例如十进制数59 转换成 八位二进制数为 59-32 => 27-16 => 11-8 => 3-2 => 10011 1011 如果是-59则二进制码为 1011 1011使用反码比使用原码第一个方便的地方在于可以把数值范围加一 ,8位二进制的范围是-127~127补码的范围是-128~127我们正常..

2021-01-03 13:08:20 1122

8086处理器模拟软件

可以在intel系列高于8086版本上运行模拟器,方便对汇编语言和指令系统的学习,调试

2021-01-04

L9_JPEG压缩编码.pdf

jpeg图片压缩格式的详细介绍以及流程讲解

2020-06-28

抖音python表白小程序

使用tkinter实现gui窗口程序,包括创建窗口,消息机制的应用,指定窗口中各个组件的布局凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数

2020-06-12

mtcnn人脸检测工具

mtcnn人脸检测工具,三个npy文件是训练好的模型参数,可以通过运行detect _face 处理数据凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数

2020-04-26

java爬虫实现代码

使用maven框架内置多种所用的jar包,通过爬取csdn博主的近两万条博客数据并存储在数据库中。再通过SQL语句可以方便查询排序,看到每个博主博客 点赞数、阅读量、评论数等数据并且可以据此进行排序。 相关教程请看博客 java爬虫项目(1)-(10)

2020-03-22

(机器学习)python决策树+神经网络.zip

使用python实现机器学习中决策树以及神经网络模型,并利用python中的matplotlib模块画出结果图形。

2019-12-26

北邮软院考研资料.rar

北京邮电大学软件学院考研资料,包括期末考试,课程作业,机试,导师介绍等等 北京邮电大学软件学院考研资料,包括期末考试,课程作业,机试,导师介绍等等 北京邮电大学软件学院考研资料,包括期末考试,课程作业,机试,导师介绍等等 北京邮电大学软件学院考研资料,包括期末考试,课程作业,机试,导师介绍等等

2019-12-07

网页爬虫(附源码)凑字数凑字数

--实现使用爬虫对山大日记官网 近一个月的日记的全部内容的爬取 http://www.sdrj.sdu.edu.cn/mrtt.htm凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数

2019-05-07

web技术实验-使用层叠样式表CSS(附实验报告)

网站规划与网页设计 课程实验--使用层叠样式表CSS(code+report)凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数凑字数

2018-12-05

数据结构——链表的实现

数据结构课程的链表类的C++实现,搜索,删除,插入,查找等函数

2017-12-29

空空如也

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

TA关注的人

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