- 博客(66)
- 收藏
- 关注
转载 凸优化方法
非凸优化的方法关于非凸优化的方法, https://blog.csdn.net/kebu12345678/article/details/54926287 提到,可以把非凸优化转换为凸优化,通过修改一些条件。非凸优化问题如何转化为凸优化问题的方法:1)修改目标函数,使之转化为凸函数2)抛弃一些约束条件,使新的可行域为凸集并且包含原可行域而 https://blog.csdn.net/R1uNW1W/article/details/79000042 的论文提到了解决非凸优化问题的几种方法:1.利用
2021-11-10 15:26:39
1219
转载 解决BASE64Encoder报错的问题
问题:Cannot resolve symbol ‘BASE64Encoder’原因:在JDK9后,官方就已经不支持import sun.misc.BASE64Encoder了。解决方法:第一种:把JDK的版本降低到1.8以内。(不建议)第二种:采用了官方提供了新的jar包import java.util.Base64。下面这个java类的本意是为了,给文件名在不同的浏览器中,修改对应的编码格式,使其能正确显示中文。这是用sun.misc.BASE64Encoder; import sun
2021-11-08 22:28:48
16190
5
原创 如何打出①—⑳
如何打出①—⑳MathType 打出 ①—⑳选择编辑 -> 插入符号 -> 查看一栏:第一个选择字体,第二个选择Arial Unicode MSword2016 打出 ①—⑳选择插入 -> 符号 -> 其他符号 -> 选择符号 -> 字体:Arial Unicode MS;子集:带括号的字母数字...
2021-10-29 17:11:37
3661
转载 cmd中mysql输出:中文乱码和格式不对齐
初始状态如下第一步:set names gbk;发现乱码的问题解决了 但还是没有对齐第二步:charset gbk;此时发现表格对齐需要注意的是,刚刚的字符集不对应有两种可能第一种是在安装mysql(默认utf-8)的过程中修改了第二种是创建表格的时候...
2021-10-27 21:03:32
422
原创 vs2019:c6328和c4477警告解决方法
两种解决方案:直接给第三个参数传为 指定int类型值scanf_s("%s", &info[0], 1);强制转换一下类型scanf_s("%s", &info[0], (int)sizeof(info[0]));
2021-09-15 16:25:57
7326
转载 ps命令详解
原文地址:http://apps.hi.baidu.com/share/detail/32573968 有时候系统管理员可能只关心现在系统中运行着哪些程序,而不想知道有哪些进程在运行。由于一个应用程序可能需要启动多个进程。所以在同等情况下,进程的数 量要比程序多的多。为此从阅读方面考虑,管理员需要知道系统中运行的具体程序。要实现这个需求的话,就需要利用命令ps来帮忙。 要对进程进行监测和控制,首先必须要了解当...
2021-07-28 11:35:09
2062
原创 Linux —— 共享库
共享库共享库的制作以 fun1.c 和 fun.2 为例步骤一:生成目标文件 .o ,此时要加编译选项:fPIC(fpic)gcc -fpic -c fun1.c fun2.c参数:-fpic创建与地址无关的编译程序,目的就是为了能够在多个应用程 序见共享。步骤二:生成共享库,此时要加链接器选项:-shared(指定生成动态链接库)gcc -shared fun1.o fun2.o -o libtest2.so共享库的使用:运行命令和静态库一样**用到的参数:**
2021-07-12 00:50:15
452
转载 VMware安装后没有VMnet1和VMnet8网络
VMware安装启动后,查看网络适配器发现没有VMnet1和VMnet8网络打开计算机管理找到Device Install Service和Device setup Manager两个服务右键、属性、将他们全部设置为自动打开VMware的虚拟网络编辑器打开更改设置修改VMnet1(主机模式 )修改VMnet8(NAT模式)注意,如果修改保存之后检查网络适配器还是没有出现这两个网络,那就得用一个工具去修复(没有操作过)百度搜索CCleanner
2021-07-06 12:21:48
2118
2
原创 C++判断文件是否为空
C++文件操作——判断文件是否为空1、文件不存在 is_open()用 is_open() 函数判断文件打开的路径是否正确,返回值为bool类型:true:表示文件打开成功;false:表示文件打开失败。通常用读文件操作 用 !is_open() 判断文件是否存在因为,C++读文件时,文件不存在,读文件中内容会报错ifstream ifs;ifs.open("文件名", ios::in);if (!ifs.is_open()){ cout << "文件不存在!" <
2021-07-03 21:56:08
14035
9
转载 凸规划求解包cvxopt
1. 软件介绍1.1 安装在机器学习问题中,我们常常需要对多优化问题进行求解,用一般的线性规划求解器没有办法求解了。cvxopt是一个可靠的求解包,安装方法如下:pip install cvxopt1.2 使用说明优化器:使用op(目标函数,约束条件)进行定义,调用solve()可以求解,调用objective.value()可以获得求解之后的目标值。op也可以从MPS标准格式的文件中读取数据。变量:使用variable()进行声明,可以传入整数定义变量数组。求解之后可以调用value变量获取
2021-06-18 11:44:17
2401
转载 为什么要证明问题是NP hard
NP问题证明是为了说明涉及问题的可计算出解的规模限制。至少在人类目前的有限计算能力下,可以找到一个数字N,当问题的规模大于N时,要花很长时间才能求解,而小与N是却相对容易算出。证明的NP Hard,大家就很清楚这个问题的难度,而对于实验规模和有效性就有一个相对可靠的认知。...
2021-06-02 12:59:05
438
转载 C++ 方向数组
方向数组方向数组常应用于搜索算法中,在c/c++中可以用二维数组来表示方向。例如二维数组a[k][n]含义就是方向数组里面储存了k个向量,而n则代表每个向量有n维(n一般为2)。下面我们由下图来讲解方向数组如何控制方向。上图是(x,y)这个点八个方向的坐标,在c/c++中x和y并不是我们数学中的坐标系而是数组的行数(x对应行数)和列数(y对应列数)。例题解析由本题题意可知我们要求这一堆数字中连续四个数字(不同方向)相乘最大值,我们就以图中标红的第一个数字26为例,可以看出26为起点一共有八个方
2021-05-25 21:24:26
1814
原创 图的深度优先遍历(DFS)和 广度优先遍历(BFS)
图的深度优先遍历(DFS)1、深度优先搜索遍历过程图的深度优先搜索(Depth First Search),和树的先序遍历比较类似。它的思想:假设初始状态是图中所有顶点均未被访问,则从某个顶点v出发,首先访问该顶点,然后依次从它的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和v有路径相通的顶点都被访问到。 若此时尚有其他顶点未被访问到,则另选一个未被访问的顶点作起始点,重复上述过程,直至图中所有顶点都被访问到为止。显然,深度优先搜索是一个递归的过程深度优先遍历特点是,选定一个出发点后进
2021-04-27 22:02:21
2449
原创 图
图的概念无向完全图:任意两个顶点之间都存在边有向完全图:任意两个顶点之间都存在互为相反的两条弧权:与图的边或弧相关的数网:带权的图顶点的度是指和该顶点关联的边的数目无向图的度:边的数量等于各顶点度数和的一半有向图的度:弧的数量 = 各个顶点出度和 = 各个顶点的入度和连通图:无向图中,任意两个顶点都存在可以到达的边(无向图)连通图的生成树:是一个极小的连通子图,图中全部有n个结点,但只有n-1 条边图的存储方式代码(C++)图的顺序存储(邻接矩阵)无向图#include<
2021-04-26 12:07:23
180
原创 二叉树
二叉树特点每个父节点至多有两个子节点非空二叉树中的叶子结点的数量等于双分支结点(度为2的结点)的数量加1.二叉树的第i层上最多有2^(i-1)(i>=1)个节点。高度(或深度)为i的二叉树最多有2^i-1(i>=1)个节点。也可以认为高度为i的二叉树有 2^i-1 个结点,那么该二叉树为满二叉树。二叉树遍历先序遍历(根左右)中序遍历(左根右)后序遍历(左右根)代码(C++)先序、中序、后序递归遍历#include<iostream>using name
2021-04-22 11:08:40
183
原创 队列
队列的特点先进先出队尾进元素,队头出元素不能遍历整个队列代码(C++)队列的顺序存储(数组)03 SeqQueue.h文件#pragma once#include<iostream>using namespace std;#define MAX_SIZE 1024//数组的左边和右边都可以作为队头或队尾,因为都需要移动数组中元素//这里选择数组的左端为队头//队列的结构体typedef struct SEQQUEUE{ void* data[MAX_SIZ
2021-04-21 10:59:26
103
原创 栈
栈的特点先进后出不能遍历访问只能访问栈顶元素弹出元素先从栈顶弹出代码(C++)栈的顺序存储(数组)01 SeqStack.h文件#pragma once#include<iostream>using namespace std;#define MAX_SIZE 1024//用数组模拟栈,数组的右端为栈顶typedef struct SEQSTACK{ void* data[MAX_SIZE]; int size;}SeqStack;//初始化栈Se
2021-04-20 15:57:29
108
原创 希尔排序
概念希尔排序(Shell Sort)是插入排序的一种,它是针对直接插入排序算法的改进。希尔排序又称缩小增量排序,因 DL.Shell 于 1959 年提出而得名。它通过比较相距一定间隔的元素来进行,各趟比较所用的距离随着算法的进行而减小,直到只比较相邻元素的最后一趟排序为止。适用希尔排序时间复杂度是 O(n^(1.3-2)),空间复杂度为常数阶 O(1)。希尔排序没有时间复杂度为 O(n(logn)) 的快速排序算法快 ,因此对中等大小规模表现良好,但对规模非常大的数据排序不是最优选择,总之比一般
2021-04-20 11:06:56
123
原创 归并排序
基本思想归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略。先将数组中的元素都分为一个元素一组,然后再两两合并,合并是要按顺序存储。归并排序是空间换时间。图解代码(C++)//归并排序算法void Merge(int* arr, int start, int mid, int end, int* temp){ int i_start = start; int i_end = mid; int j_start =
2021-04-20 10:07:39
138
原创 快速排序
快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,在极端情况下为O(N^2).基本思想先从数列中取出一个数作为基准数。分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。再对左右区间重复第二步,直到各区间只有一个数。方法挖坑法交换法挖坑法通常取第一个数为基准数,将基准值赋给临时变量 temp 此时第一个位置就相当于是一个坑,然后从两端开始与 temp 比较,以temp为分界线,将大于(小于)的数放在temp的右边,将小于(大于)temp 的
2021-04-19 17:32:31
96
原创 排序算法——插入排序
插入排序基本思想插入排序的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新的、记录数增 1 的有序表。在其实现过程使用双层循环,外层循环对除了第一个元素之外的所有元素,内层循环对当前元素前面有序表进行待插入位置查找,并进行移动。适用说明插入排序使用少量的元素,平均时间复杂度O(n^2),空间复杂度为常数阶 O(1)插入排序的C++模板函数template <class T> void insertSort(T* arr, int len){ int i, j; T
2021-04-19 12:05:53
122
原创 M/M/1 排队论模型
M/M/1 排队论模型1.M/M/1 模型简单介绍到达时间是泊松过程(Poisson process);服务时间是指数分布(exponentially distributed);只有一部服务器(server)队列长度无限制可加入队列的人数为无限这种模型是一种出生-死亡过程,此随机过程中的每一个状态代表模型中人数的数目。因为模型的队列长度无限且参与人数亦无限,故此状态数目亦为无限。例如状态0表示模型闲置、状态1表示模型有一人在接受服务、状态2表示模型有二人(一人正接受服务、一人在等候),如此
2021-03-25 21:56:36
42558
转载 【算法】超详细的遗传算法(Genetic Algorithm)解析
转自:https://www.jianshu.com/p/ae5157c26af9【算法】超详细的遗传算法(Genetic Algorithm)解析00 目录遗传算法定义生物学术语问题导入大体实现具体细节代码实现01 什么是遗传算法?1.1 遗传算法的科学定义遗传算法(Genetic Algorithm, GA)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。其主要特点是直接对结构对象进行操作,不存在求导和函数连续
2021-03-24 22:14:04
91552
1
转载 面试题:return *this和return this有什么区别?
转自https://blog.csdn.net/stpeace/article/details/22220777return *this返回的是当前对象的克隆或者本身(若返回类型为A, 则是克隆, 若返回类型为A&, 则是本身 )。return this返回当前对象的地址(指向当前对象的指针), 下面我们来看看程序吧:#include <iostream>using namespace std; class A{public: int x; A* get() {
2021-03-10 12:13:23
201
转载 C++ Primer 第5版习题答案
转自C++Primer第五版——习题答案详解第一章全部题目(第一章基础较多)http://blog.csdn.net/misayaaaaa/article/details/53200001第二章1~10题:http://blog.csdn.net/misayaaaaa/article/details/5320077311~20题:http://blog.csdn.net/misayaaaaa/article/details/5322054921~30题:http://blog.csdn.net
2021-03-09 16:47:23
888
转载 最优化算法之粒子群算法(PSO)
一、粒子群算法的概念 粒子群优化算法(PSO:Particle swarm optimization) 是一种进化计算技术(evolutionary computation)。源于对鸟群捕食的行为研究。粒子群优化算法的基本思想:是通过群体中个体之间的协作和信息共享来寻找最优解....
2021-01-21 12:34:51
892
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅