摘要:
VirtualBox安装Kali 下载VBox 去Virtual Box官网下载(根据操作系统选择版本,此处以Windows为例) 打开安装程序进行安装即可 安装Kali 去Kali Linux官网下载镜像 点击Virtual Machines下的"Recommended" 点击下载按钮 下载完毕后 阅读全文
摘要:
Conda安装及第一个py程序 安装Conda 下载安装 在Anaconda官网下载Anaconda 打开Conda安装程序 设置好安装目录(这个一定要记好,后边要用),比如我的目录就是 D:\ProgramData\Anaconda3\ 剩下的按默认进行就可以了 环境变量配置 环境变量配置非常重要 阅读全文
摘要:
二叉树及其遍历 二叉树概念定义 什么是二叉树 二叉树特点是每个节点最多只能有两棵子树,且有左右之分的树。 注:关于数据结构——树的一些基本概念可以参考《树的概念及基本术语》 - CairBin's Blog 二叉树的基本性质 关于二叉树的基本性质前面已经写的很详细了,可以回顾文章《二叉树》 - Ca 阅读全文
摘要:
DFS与N皇后问题 DFS 什么是DFS DFS是指深度优先遍历也叫深度优先搜索。 它是一种用来遍历或搜索树和图数据结构的算法 注:关于树的一些知识可以去看《树的概念及基本术语》这篇文章 它会不断地沿着节点的深度方向(该深度方向为其邻接点的方向)进行遍历 DFS如何实现 DFS主要步骤有以下几步 访 阅读全文
摘要:
哈希排序算法 说明 哈希算法是一种以空间换取时间的算法。 下面以一个例题的方式来进一步说明这个算法。 时间复杂度 O(n) 例题 问题描述 HDU 1425 “Sort” 给你n个整数,请按从大到小的顺序输出其中前m大的数。 输入:每组数据有两行,第一行有两个数n和m(0<n,m<1000000), 阅读全文
摘要:
原因 学校网络安全课讲到了Hash函数,老师提了一句上机操作的时候可以用自己的写的文件校验软件,所以我干脆就自己写一个。 说明 支持算法 MD5 SHA1 SHA256 SHA512 SHA384 为什么没有其它算法 因为.net原生库里就支持这几种,其它的我懒得写了(doge) 功能 计算文本的H 阅读全文
摘要:
PicCompress 说明 之前上传博客图片过大不方便加载,还有一些微信平台的图片无法上传有大小限制,于是就打算开发个压缩图片的工具 支持图片格式 PNG(.png) JPEG(.jpg, .jpeg, .jpe, .jfif) 主要界面 主要功能 压缩图片 可支持多图片压缩(在点击按钮选择图片文 阅读全文
摘要:
归并排序 定义 归并排序是一种采用分治法,即先使每个子序列有序,再使子序列段间有序,然后合成一个完整的有序表的有效排序方法。 主要步骤 划分 排序 合并 实际过程 实际过程如下图(图片来自百度) 代码 核心代码 merge() 因为我们在此使用了递归的方式,对于临时数组temp在此函数内不好写,所以 阅读全文
摘要:
高精度减法 简介 用于计算含有超过一般变量存放不下的非负整数 高精度加法这个过程是模拟的小学竖式减法计算 注:在本文中,我们默认输入的第一个数为被减数,且被减数大于减数 原理基本上与高精度加法相同,仅在核心代码处有些区别,因此本文较为简略,建议先阅读文章《高精度加法(C++实现)》 主要步骤 清零 阅读全文
摘要:
高精度加法 简介 用于计算含有超过一般变量存放不下的非负整数 高精度加法这个过程是模拟的小学竖式加法计算 步骤 以下有顺序之分 数组清零 输入 获取长度 逆置 字符型数字转成对应的整型数字 计算并输出 简单来看重要的步骤也就以下几步 清零 逆置 转换 相加计算(包含进位) 代码实现 逆置 因为数组存 阅读全文