![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Algorithm
文章平均质量分 83
qyhyzard
愿技术分享成为一种习惯
展开
-
人工智能算法——随机重启爬山法,模拟退火算法,遗传算法求解N皇后问题
一、爬山法爬山法就是完全的贪心算法,每一步都选最优位置,可能只能得到局部最优解。本实验对普通爬山法进行了简单的优化,采用了传统爬山法的变种——随机重启爬山法,当爬山步数超过一定值时,会重新打乱棋盘,重新“爬山”。适应度函数:冲突皇后的总对数 “爬山”:每一步就是将棋盘的某一行的皇后移动到最优的位置,即该位置让冲突的皇后对数最少,即适应度函数值最小。 “不断地爬山”: 循环对棋盘的每一行...原创 2018-10-07 16:47:49 · 8494 阅读 · 1 评论 -
C++ | 二叉树前序、中序、后序遍历的递归和非递归实现 +层序遍历+深度优先遍历
二叉树的遍历是学习二叉树最基本却极为重要的一环。当你熟练掌握二叉树的遍历之后,你会发现很多题目都是建立在遍历的基础上来解决的,原创 2019-08-19 15:14:29 · 6156 阅读 · 8 评论 -
wget方式下载MS COCO数据集
最近正在做实例分割的项目,需要下载MS 2017 的COCO数据集,但是呢,直接从官网上下载,速度较慢(需要fq),用迅雷更是完全不行滴。翻遍整个CSDN(误),都没有找到合适的下载源。最后在github上找到以下的方法来下载标签文件,图片文件,特此分享给大家。在linux 终端中,新建下载脚本。vim coco.sh使用 wget 的方法获取2017的数据集。#!/bin/sh复...原创 2019-05-11 19:29:26 · 6735 阅读 · 4 评论 -
pytorch 实战 | 动手设计CNN+MNIST手写体数字识别
文章目录前言引入库函数预设超参数加载数据集设计CNN训练前准备训练模块预测模块运行结果总结前言相信对于每一个刚刚上手深度学习的孩子来说,利用mnist数据集来训练一个CNN是再好不过的学习demo了。本文使用 pytorch 来动手搭建一个卷积神经网络来训练和预测手写数字。通过本文,你将了解到pytorch的一些功能:高效加载数据集;简单灵活设计神经网络;各种学习优化器(一...原创 2019-03-15 13:10:28 · 1898 阅读 · 4 评论 -
SVM支持向量机原理及python实现
文章目录@[toc]基本概念函数间隔kernelsoft margin & slack variableSequential Minimal Optimizationpython 实现基本概念最简单的支持向量机是一个二分类的分类器。分类思想是给定一组包含正负样本的集合,然后找到一个超平面(可以是一维或者多维),来对正负样本进行分割。该方法对于解决小样本,非线性,及高维模式识别中表现出...原创 2018-12-24 22:58:28 · 2215 阅读 · 0 评论 -
利用Java库函数和自己实现的解析算法来读取X.509证书
目录Java自带库函数读取X.509证书字段理解证书数据格式,然后解析基本概念算法思路核心步骤Java自带库函数读取X.509证书字段 这个很简单,直接上代码。读取然后全部输出,或者输出对应字段。import java.security.*;import java.security.cert.*;import java.security.cert.Certif...原创 2018-12-16 15:18:35 · 1694 阅读 · 2 评论 -
Java实现MD5算法过程,并利用自带MD5函数进行对比校验
文章目录一、环境说明二、算法原理概述三、程序设计数据结构重要模块步骤四、运行结果一、环境说明操作系统:window10编程语言:Java (JDK版本 11.0.1)使用IDE:Intellij IDEA二、算法原理概述整个MD5(信息摘要算法5)的基本过程可以概括为以下几个步骤:填充:消息为 KKK bits的原始消息数据尾部填充长度为PPP bits的标识1000...0&...原创 2018-12-06 21:43:18 · 897 阅读 · 0 评论 -
简单易懂的距离向量算法DV阐述(附伪代码)
算法说明距离向量算法是一种迭代的、异步的、分布式的、能够自我终止的算法。在计算机网络中,该算法主要用在路由选择上。本文的讨论范围就限于计网中的路由选择算法。以下展开算法解释。异步:该算法不要求所有结点之间相互保持一致地进行操作和计算。 分布式:每个结点都只维护一张局部的路由表,每个路由结点需要从一个或者多个直接相邻的邻接结点接收某些链路信息,执行计算,然后将计算结果分发给邻接结点。...原创 2018-11-21 17:13:23 · 17808 阅读 · 0 评论 -
RSA算法过程
构造一个公钥密码系统的要求产生一对密钥是计算可行的发送方利用公钥和明文,产生密文是计算可行的接收方利用私钥和密文,产生明文是计算可行的对于攻击者,利用公钥来推断私钥是计算不可行的已知公钥和密文,恢复明文是计算不可行的(可选) 加密和解密的顺序可交换RSA 算法的起源RSA 算法在1977年由MIT 的Ron Rivest、Adi Shamir 和Leonard Adleman...原创 2018-11-14 15:38:56 · 6894 阅读 · 0 评论 -
DES算法实践(python版本)
一、 DES算法原理概述预备知识64位为一个分组,当成明文输入DES算法模型,输出同样长度64位的密文。对称加密,加密密钥也是解密密钥,密钥定义了加密过程。密钥构成:64位,每8位的最后一位用于奇偶校验,所以实际密钥长度为56位。基本过程是换位和置换(根据置换矩阵)算法核心概要总体结构Feistel轮函数子密钥生成解密过程信息空...原创 2018-11-03 16:46:59 · 898 阅读 · 0 评论 -
经典排序算法C++全实现:插入、选择、冒泡、快排、归并、基数,堆排、希尔...
以下代码是个人学习排序算法的一些实践,实现了大部分排序算法的升序版本,并且对每一种算法进行了简要的介绍和复杂度分析。涉及的算法如下:插入排序:直接插入排序、折半插入排序、希尔排序交换排序:冒泡排序、快速排序选择排序:简单选择排序、堆排序其他类型:归并排序、基数排序#include <iostream>#include <string>#include &...原创 2019-09-28 22:36:32 · 644 阅读 · 0 评论