![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 79
IT修道者
算法工程师。兴趣广泛,喜欢尝试不同的东西。
展开
-
n皇后问题的三种解法
N皇后问题是一个经典的问题,在一个N*N的棋盘上放置N个皇后,每行一个并使其不能互相攻击(同一行、同一列、同一斜线上的皇后都会自动攻击)。n皇后问题不算是陈词滥调,也是老生常谈了,作为回溯的经典案例,有递归和非递归两种实现方式,同时,除了回溯算法,最近我在网上查了下看到还可以用位运算来解决这个问题。本次趁着本学期算法课程的期末要求,我将对两种算法的实验效果进行分析。1、使用回溯解决n皇后问原创 2014-01-10 12:57:24 · 70709 阅读 · 8 评论 -
堆排序
//大根堆void HeapAdjust(int H[],int s, int m){ int rc = H[s]; for(int i=2*s;i<m;i*=2) { if (H[i]>H[i+1]) i++; if(H[s]<H[i]) { H[原创 2015-09-16 20:38:43 · 435 阅读 · 0 评论 -
约瑟夫环-递归算法
问题描述:约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。通常解决这类问题时我们把编号从0~n-1,最后结果+1即为原问题的解。问题求解:假设下标从0开始,0,1,2 .. m-1共m个原创 2015-09-16 22:17:33 · 1777 阅读 · 0 评论 -
岭回归原理及代码实现
岭回归(英文名:ridge regression, Tikhonov regularization)是一种专用于共线性数据分析的有偏估计回归方法,实质上是一种改良的最小二乘估计法,通过放弃最小二乘法的无偏性,以损失部分信息、降低精度为代价获得回归系数更为符合实际、更可靠的回归方法,对病态数据的拟合要强于最小二乘法。原创 2016-01-09 10:02:35 · 16013 阅读 · 3 评论 -
双线性插值算法ARM NEON优化
C语言版本双线性插值算法inline double bilinear_interp(double x, double y, double v11, double v12, double v21, double v22) { return (v11 * (1 - y) + v12 * y) * (1 - x) + (v21 * (1 -原创 2016-12-23 17:34:53 · 5495 阅读 · 4 评论 -
Image-to-Image Translation with Conditional Adversarial Networks笔记
对论文Image-to-Image Translation with Conditional Adversarial Networks中的方法进行了总结原创 2017-09-22 23:44:09 · 1241 阅读 · 0 评论 -
在caffe中用python添加confusion matrix层
confusion matrix(混淆矩阵)在分类问题中能比单纯的准确率更全面地反应模型的好坏,本文主要目的是在caffe中用python添加confusion matrix层。原创 2017-11-27 15:23:50 · 1768 阅读 · 3 评论 -
在iOS上实现YOLO目标检测算法
本文主要介绍YOLOv2在iOS手机端的实现 Paper:https://arxiv.org/abs/1612.08242 Github:https://github.com/pjreddie/darknet Website:https://pjreddie.com/darknet/yoloYOLOv2简介yolov2的输入为416x416,然后通过一些列的卷积、BN、Pooli...原创 2018-01-01 23:37:30 · 3701 阅读 · 2 评论 -
onnx与tensorflow格式的相互转换
onnx是Facebook打造的AI中间件,但是Tensorflow官方不支持onnx,所以只能用onnx自己提供的方式从tensorflow尝试转换Tensorflow模型转onnxTensorflow转onnx, onnx官方github上有提供转换的方式,地址为https://github.com/onnx/tutorials/blob/master/tutorials/Onnx...原创 2018-05-30 23:32:56 · 28355 阅读 · 18 评论 -
tensorflow batch_normalization的正确使用姿势
BN在如今的CNN结果中已经普遍应用,在tensorflow中可以通过tf.layers.batch_normalization()这个op来使用BN。该op隐藏了对BN的mean var alpha beta参数的显示申明,因此在训练和部署测试中需要特征注意正确使用BN的姿势。正确使用BN训练注意把tf.layers.batch_normalization(x, training=is_...原创 2018-06-27 22:40:36 · 19978 阅读 · 14 评论 -
快速排序
在网上看到一篇快排的文章,算法写得非常简洁,特拿出来稍微修改后分享下。快速排序采用的思想是分治思想。快速排序是找出一个元素(理论上可以随便找一个)作为基准(pivot),然后对数组进行分区操作,使基准左边元素的值都不大于基准值,基准右边的元素值 都不小于基准值,如此作为基准的元素调整到排序后的正确位置。递归快速排序,将其他n-1个元素也调整到排序后的正确位置。最后每个元素都是在排序后的原创 2015-09-16 08:44:44 · 545 阅读 · 0 评论 -
内存拷贝和字符串拷贝
1 先讨论下字符串拷贝,因为这个比较简单,但是还是有一些细节需要注意。我面试的时候就忘了写const//为了防止源字符串被修改,src应该为constchar *strcpy(char *dst, const char *src); { //空指标检查 assert((dst!=NULL) && (src !=NULL)); char *addres原创 2015-07-06 10:35:52 · 1594 阅读 · 0 评论 -
汉诺塔问题的递归和非递归算法
汉诺塔问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。如果考虑一下把64片金盘,由一根柱子上移到另一根柱子上,并且始终保持上小下大的顺序。这需要多少次移动呢?这里需要递归的方法。原创 2014-01-10 13:22:23 · 40321 阅读 · 5 评论 -
数据结构课程设计--通讯录管理(C语言实现)
先上代码,后面在原创 2014-08-22 09:37:35 · 14884 阅读 · 7 评论 -
虹膜图像分割(一)内圆检测
本文和下文介绍如何对一个虹膜眼睛中心进行定位识别,这里以我做的一种方法写一下,当然还有很多其他更好的方法,仅做参考下。原创 2014-11-14 18:19:54 · 9622 阅读 · 5 评论 -
虹膜图像分割(二)外圆检测
在上正常情况下,一副拍好的虹膜图像如下所示(当然有的可能不一样,大概相同):原创 2014-11-14 18:46:21 · 4343 阅读 · 1 评论 -
灰度共生矩阵的实现
由于纹理是由灰度分布在空间位置上反复出现而形成的,因而在图像空间中相隔某距离的两象素之间会存在一定的灰度关系,即图像中灰度的空间相关特性。灰度共生矩阵就是一种通过研究灰度的空间相关特性来描述纹理的常用方法。原创 2014-10-05 20:17:23 · 5107 阅读 · 1 评论 -
使用灰度共生矩阵实现指纹分割
灰度共生矩阵,Gray Level Co-occurrence Matrix,简写为GLCM 由于纹理是由灰度分布在空间位置上反复出现而形成的,因而在图像空间中相隔某距离的两象素之间会存在一定的灰度关系,即图像中灰度的空间相关特性。灰度共生矩阵就是一种通过研究灰度的空间相关特性来描述纹理的常用方法。 取图像(N×N)中任意一点 (x,y)及偏离它的另一点 (x+a,原创 2014-10-19 21:28:46 · 5308 阅读 · 3 评论 -
LeetCode---Two Sum
无意间在CSDN博客上逛时https://oj.leetcode.com/problems/two-sum/原创 2014-10-23 14:38:20 · 887 阅读 · 0 评论 -
LeetCode-Add Two Numbers
问题描述:You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return i原创 2015-03-27 17:30:53 · 752 阅读 · 0 评论 -
把字符串转换成整数
题目:输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345",则输出整数345。分析:这道题尽管不是很难,学过C/C++语言一般都能实现基本功能,但不同程序员就这道题写出的代码有很大区别,可以说这道题能够很好地反应出程序员的思维和编程习惯,因此已经被包括微软在内的多家公司用作面试题。建议读者在往下看之前自己先编写代码,再比较自己写的代码和下面的参考代码有哪些不同。转载 2015-07-06 10:22:01 · 628 阅读 · 0 评论 -
Pytorch转tflite
目标是想把在服务器上用pytorch训练好的模型转换为可以在移动端运行的tflite模型。最直接的思路是想把pytorch模型转换为tensorflow的模型,然后转换为tflite。但是这个转换目前没有发现比较靠谱的方法。经过调研发现最新的tflite已经支持直接从keras模型的转换,所以可以采用keras作为中间转换的桥梁,这样就能充分利用keras高层API的便利性。转换的基本思想就...原创 2018-11-16 19:53:05 · 6872 阅读 · 2 评论