自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

little fire的博客

网络小白的学习之旅

  • 博客(18)
  • 收藏
  • 关注

转载 num&(num-1)的用途

作用1:判断num是否是2的指数if(num&(num-1)==0)//num是2的指数解释:2的指数的二进制表示为1000,该值减一为0111,两者相与必为0。作用2:计算num二进制表达中1的个数int numOf1(int num){ int res=0; while(num!=0){ res++; num=num&(num-1); } return res;}解释:num的最低位(最右边)的1被翻转,直至

2021-07-12 11:43:29 2095 1

原创 排序算法合集

牛客字节跳动高频题:排序在此总结下排序算法的基本概念,代码亲自码一遍。术语说明1、稳定排序:如果 a 原本在 b 的前面,且 a == b,排序之后 a 仍然在 b 的前面,则为稳定排序。2、非稳定排序:如果 a 原本在 b 的前面,且 a == b,排序之后 a 可能不在 b 的前面,则为非稳定排序。3、原地排序:原地排序指在排序过程中不申请多余的存储空间,只利用原来存储待排数据的存储空间进行比较和交换的数据排序。4、非原地排序:需要利用额外的数组来辅助排序。5、时间复杂度:一个算法执行所消

2021-05-07 15:36:46 197

原创 国密算法介绍-SM3及摘要算法(签名算法)国际SHA-256

一、引入由于项目中需要用到hash算法,然而研究生以来都没有接触过真正有关密码算法的项目,今天先了解下国密算法和密码学中应用最广泛的三类算法:1、对称算法(分组密码算法)代表分组密码算法(DES和SM4);2、非对称算法(公钥密码算法)代表公钥密码算法(RSA和SM2);3、杂凑算法(摘要算法)代表摘要算法(HAS-256系列和SM3);来了解下他们之间的区别和用法。参考:https://blog.csdn.net/jambeau/article/details/99761661二、算法区别

2021-01-15 10:20:15 27178 1

原创 centos系统/dev/mapper/centos-root目录被占满的解决方式

最近数据库项目中需要测试存储和查询的速率,就在虚拟机的数据库mysql中存入了大量数据,导致磁盘内存占满,无法存入数据,虚拟机在关机后也没法开机。好在之前把虚拟机备份了,这足以说明备份的重要性,现在能有心情来写文的我得益于之前那个备份了虚拟机的我,感恩呐。接下来就写下我在备份虚拟机上如何解决根目录被占满的问题:1、查看虚拟机磁盘使用情况命令行:df -h可查看当前根分区的大小可以看到/dev/mapper/centos-root 已经快满了,这时候就算启动hdfs,也会是强制性的进入安全模式,不让写

2021-01-04 15:44:22 26733 2

转载 访问网址时数据的详细传输过程

面试经常遇到的问题:当输入网址后,到网页显示,期间发生了什么,下面就详细的介绍网址数据包在网络中的历程。引言网络拓扑模型如下:文章目录引言前言 一、请求URL二、使用步骤1.引入库2.读入数据总结前言整个过程基本分做下面几个部分:1、域名解析成IP地址;2、与目的主机进行TCP连接(三次握手);3、发送与收取数据;4、与目的主机断开TCP连接(四次挥手); 一、请求URLURL由三部分组成:资源类型、存放资源的主机域名、资源文件名。也可认为由4部分组成:协议、主机、端口、路径。

2020-12-09 11:24:41 632

原创 程序编译的详细过程

一、c/c++程序编译过程C语言的编译连接过程把我们编写的一个c程序(源代码)转换成可以在硬件上运行的程序(可执行文件:win下是.obj,linux下是.so),通过编译和链接两个步骤实现。为了我们编写的hello.c程序可以被执行,驱动硬件电路工作,hello.c程序必须经过一些列处理步骤,将源程序转化为可执行性的目标程序。编译:把文本形式源代码翻译成机器语言形式的目标文件的过程链接:把目标文件、操作系统的启动代码和用到的库文件进行组织,最终生成可执行文件代码的过程。源程序到目标程序执行(G

2020-12-07 09:44:15 7737 1

原创 密码算法知识

miracl函数库的函数研究题目1、Alice 与 Bob 协商会话密钥。2、采用如下对称密码算法加解密,并验证正确性。收集相关小知识1、线性反馈移位寄存器理论知识2、SHA-512:3、openssl安装4、rsa的数据结构5、rsa实现加解密搜索到的有用文章最近在看密码算法的相关知识,要写会话秘钥的相关代码题目1、Alice 与 Bob 协商会话密钥。采用公钥密码体系(公钥加密算法也称非对称秘钥算法),通过自选密码库实现密钥协商(10 分),session key (每次通信只能使用一次的 会话

2020-12-07 09:43:35 373

原创 多线程通信软件——登录界面的实现

java实现含注册端、客户端、服务端的多线程通信软件,参考了各个博主原文链接:https://blog.csdn.net/Alexwym/article/details/80711015一、JAVA提供的图形界面类AWT组件:AWT组件是JDK1.0的时候推出的图形界面类,它的名字是根据包名而来的:java.awt。AWT组件是在实现的时候采用的是c和c++的语言混合实现的,并且调用...

2020-12-07 09:41:28 189

原创 token的理解及token的生成

一、token的理解在计算机身份认证中是令牌的意思,词法分析中的意思是标记,通俗的说法是暗号,在一些数据传输之前,要先进行暗号的核对,不同的暗号被授权不同的数据操作。token的引入在客户端频繁想服务器请求数据,服务器频繁去数据库查询用户名和密码并进行对比,判断用户名和密码是否正确,造成内存,服务器,数据库的过度使用,token便应运而生。token的定义Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户

2020-11-27 15:42:40 3750

转载 红黑树

一、红黑树概念红黑树是AVL树的变种,红黑树通过一些着色法则确保没有一条路径会比其它路径长出两倍,因而达到接近平衡的目的。所谓红黑树,不仅是一个二叉搜索树,而且必须满足一下规则:1、每个节点不是红色就是黑色。2、根节点为黑色。3、如果节点为红色,其子节点必须为黑色。4、任意一个节点到到NULL(树尾端)的任何路径,所含之黑色节点数必须相同。根据规则4,新增节点必须为红色;根据规则3,新增节点之父节点必须为黑色。当新增节点根据二叉搜索树的规则到达其插入点时,却未能符合上述条件时,就必须调整颜色并旋

2020-11-16 17:01:08 50

原创 c语言学习——.h和.c文件的区别

.h文件是头文件,内含函数声明、宏定义、结构体定义等内容; .c文件是程序文件,内含函数实现,变量定义等内容main函数为标准C/C++的程序入口,编译器会先找到该函数所在的文件#include “xx.h” 这个宏其实际意思就是把当前这一行删掉,把 xx.h 中的内容原封不动的插入在当前行的位置。C语言要求使用之前必须声明,而include同名.h一般会放在.c的开头谭浩强老师的《C程序...

2020-02-11 10:43:09 2688

原创 多线程通信——安装mysql

在做登录界面时发现字符串数组无法保留已注册的账号和密码,因此还是要借助数据库来存储,于是就开始下载安装mysql……mysql的下载地址:https://dev.mysql.com/downloads/mysql/mysql解压版的安装下载过程参考:Mysql 8.0解压版下载安装及配置教程-百度经验 https://jingyan.baidu.com/article/fcb5aff71a...

2019-08-09 18:28:23 135

原创 (四) Socket——UDP快速入门

UDP是什么Internet 协议集支持一个无连接的传输协议,该协议称为用户数据报协议,又称用户数据报文协议,基于报文的协议(不同于TCP面向链接的协议)是一种简单的面向数据报的传输层协议,正式规范RFC 768,提供面向事务的简单不可靠信息传送服务为什么不可靠一旦把应用程序发给网络层的数据发送出去,就不保留数据备份UDP在IP数据报的头部仅仅加入了复用和数据校验(字段)发送端是...

2019-08-06 12:52:01 291

转载 (三) Socket相关理论——报文、协议、Mac地址

1、数据封装报文(message)我们将位于应用层的信息分组称为报文。报文是网络中交换与传输的数据单元,也是网络传输的单元。报文包含了将要发送的完整的数据信息,其长短不需一致。报文在传输过程中会不断地封装成分组、包、帧来传输。封装方式就是添加一些控制信息组成的首部,即报文头报文段(segment)报文段是指TCP/IP协议网络传输过程中,起着路线导航作用用来查询各个网络路由...

2019-08-03 23:17:28 1038

原创 (二)Socket实战——安装开发工具IDEA

首次利用IDEA的gradle实现socket编程的java文件,实现客户端和服务端的通信

2019-08-03 00:22:34 3967

转载 计算机语言的发展

参考文章:(1条消息)汇编语言和高级编程语言区别与联系 - wangxiaoguaai123的博客 - CSDN博客 https://blog.csdn.net/wangxiaoguaai123/article/details/84322386现在似乎是在重新学习计算机知识,想对于之前的计算机的知识做一个串联1.机器语言也就是二进制语言“0”和“1”,二进制语言是计算机语言的本质,计算...

2019-07-30 09:44:09 85

转载 (一)socket编程学习——先导

什么是socket网络编程?学习socket编程的预备知识——OSI模型,TCP,UDP

2019-07-29 17:38:34 161

转载 暑期学习计划——Miracl函数库简介

MIRACL简介MIRACL(Multiprecision Integer and Rational Arithmetic C/c++ Library)是一套由Shamus Software Ltd.所开发的一套关于大数运算函数库,用来设计与大数运算相关的密码学之应用,包含了RSA 公开密码学、Diffie-Hellman密钥交换(Key Exchange)、AES、DSA数字签名,还包含了较新...

2019-07-17 15:52:39 3895

空空如也

空空如也

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

TA关注的人

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