- 博客(268)
- 资源 (7)
- 收藏
- 关注
原创 简单高效删除数组成员(非稳定性)的代码
目的:实现一个高效代码实现简单的删除数组中的需要删除的成员的功能代码代码如下所示:/* tom 2019-12-06 PM 21:50 */#include <stdio.h>typedef int BOOL;#define TRUE (1)#define FALSE (0)typedef struct tagNode{ BOOL bToDelete...
2019-12-06 21:53:03 555
原创 【性能优化】BitMap的使用:(1)创建BitMap (2)插入key到BitMap (3)删除key到BitMap (4)查询key是否存在于BitMap中
位图操作宏定义先列出来/* 位图属性变量 */#define BITMAP_STEP(bitMapType) (sizeof(bitMapType) * 8)#define BITMAP_STEPNUM(uiMaxKey, step) ((uiMaxKey + step -1) / step)#define BITMAP_BITNUM(uiMaxKey,...
2019-02-24 14:59:44 1055
原创 【链表】双向单循链表:链表创建、尾部插入节点、节点删除、指定位置插入节点、向前遍历、向后遍历。
/* 双向单循链表的创建、尾部插入节点、节点删除、指定位置插入节点、向前遍历、向后遍历. */ #include <stdio.h> #undef NULL#define NULL (0)#define LIST_NODE_MAX_NUM (256)/* 双向链表节点 */typedef struct tagNode{ union { int ...
2019-02-17 18:15:12 1608
原创 【跟我一起学gdb】(11)自动化gdb脚本之 file命令 + run命令 + set args命令 + show args命令
mian.ctom@ubuntu:~/dvp$ cat -n mainrun.c 1 #include <stdio.h> 2 3 int sum(const int a, const int b) 4 { 5 int c = a + b; 6 return c; 7 } 8 9 ...
2019-01-26 23:10:27 2519 1
原创 【跟我一起学gdb】(10)自动化gdb脚本之 list 命令
main.ctom@ubuntu:~/dvp$ cat -n main.c 1 const char* acWordsList[] = {"hello", "world", "good", "BeiJing"}; 2 3 static int s = 0; 4 5 typedef struct 6 { 7 int i...
2019-01-26 22:28:51 730
原创 【跟我一起学gdb】(9)自动化gdb脚本之 给指定断点 挂载将每次bt堆栈信息都保存到日志文件的命令
main.ctom@ubuntu:~/dvp$ cat -n main.c 1 typedef struct 2 { 3 int iW; 4 int iH; 5 int iX; 6 int iY; 7 }BOX_ST; 8 9 BOX_ST stBox; 10 static int s...
2019-01-26 01:31:50 1125
原创 【跟我一起学gdb】(8)自动化gdb脚本之malloc和free每次调用的堆栈信息写日志
main.ctom@ubuntu:~/dvp$ cat -n ./main.c 1 #include <stdlib.h> 2 #include <stdio.h> 3 4 void MyMalloc(const size_t siz, char** pptr) 5 { 6 *pptr = malloc...
2019-01-26 01:18:11 1060
原创 【跟我一起学gdb】(7)自动化gdb脚本 之给断点挂上待触发命令:(break line/func/addr if expression) then commands
main.ctom@ubuntu:~/dvp$ cat main.c -n 1 typedef struct 2 { 3 int iW; 4 int iH; 5 int iX; 6 int iY; 7 }BOX_ST; 8 9 BOX_ST stBox; 10 static int s...
2019-01-26 00:19:51 1186
原创 【跟我一起学gdb】(6)自动化gdb脚本 之 watch var if expression
main.ctypedef struct{ int iW; int iH; int iX; int iY;}BOX_ST;int sum(const int a, const int b){ int c = a + b; return c;}BOX_ST stBox;int ...
2019-01-25 23:48:36 757
原创 【跟我一起学gdb】(5)自动化gdb脚本 之 break function if expression
main.c#include <stdio.h>typedef struct{ int iW; int iH; int iX; int iY;}BOX_ST;int sum(const int a, const int b){ int c = a + b; return c;}int main(){ BOX_ST stBox; for...
2019-01-25 23:24:47 690
原创 【跟我一起学gdb】(4) break-if 以及脚本的第二种使用方法#gdb ./a.out -x gdbcmd.txt
main.c#include <stdio.h>typedef struct{ int iW; int iH; int iX; int iY;}BOX_ST;int main(){ BOX_ST stBox; for (int i = 0; i < 10000; ++i) { stBox.iW = i; stBox.iH = i; ...
2019-01-25 22:59:52 534
原创 【跟我一起学gdb】(3)灵活使用arg0,arg1可变入参------打印任意给定的数据结构对象的所有成员变量
mian.ctom@ubuntu:~/dvp$ cat -n main.c 1 #include <stdio.h> 2 3 typedef struct 4 { 5 int iW; 6 int iH; 7 int iX; 8 int iY; 9 }BOX_ST; 10 ...
2019-01-25 22:27:11 1126
原创 【跟我一起学gdb】第二个gdb脚本---打印任意给定的数据结构对象的所有成员变量
main.ctom@ubuntu:~/dvp$ cat -n main.c 1 #include <stdio.h> 2 3 typedef struct 4 { 5 int iW; 6 int iH; 7 int iX; 8 int iY; 9 }BOX_ST; 10 ...
2019-01-25 22:07:39 1962
原创 【跟我一起学gdb】第一个gdb脚本
main.c#include <stdio.h>typedef struct{ int iW; int iH; int iX; int iY;}BOX_ST;int main(){ BOX_ST stBox; stBox.iW; stBox.iH; stBox.iX; stBox.iY; return 0;}gdb脚本 gdb_...
2019-01-25 21:54:38 742
原创 【性能优化】取模运算:x%n,当n是偶数时,可以用x&(n-1)替代
#include <assert.h>void modulo_operation_opt(){ int m = 100000; int n = 100000; double a, b; //assert( (i%2n) == (i&(2n - 1))) for (int i = 10; i--;) { assert((i % 4) == (i&am...
2018-09-22 19:34:29 2624 8
原创 【性能优化】遍历数组:用pointer指针遍历 代替 index下标遍历
1. 下标方式遍历数组:void index_visit_array(){ typedef struct tagNodeST { unsigned int uix; float fy; char cz; int magic[4]; }NODE_ST; NODE_ST astNodes[10]; int len = sizeof(astNodes) / size...
2018-09-22 18:25:41 1121
原创 【性能优化】如何实现:c/c++整个项目工程使用一个全局变量
如果工程中存在malloc/free等频繁动态分配和释放内存的情况,一般优化思路是:方法1:加内存池方法2:使用全局buf 方法1的优点:众所周知,不详细说了。方法2使用场合:整个工程运行过程中,动态分配的内存大小有规律性且有最大个数。可以在工程起始阶段就分配足够的全局buf。 内存池前面文章有实现代码,这里说下支撑方法2实现的主要技术:那就是全局变量的使用方法。S...
2018-09-22 13:27:28 5797 2
原创 【darknet】开篇
开始读darknet的源代码,然后用NEON将darknet移植到HI3159上,这个开篇给自己打打气,鼓鼓劲,加油!1.darknet简介开篇就不对darknet过多详细介绍。(1)pjreddie_darknet,架构的源代码(2)hgpvision_darknet,加了中文注释的架构代码(3)AlexeyAB_darknet,windows run的架构代码2.darknet移植到HI315...
2018-06-06 19:46:34 1914
原创 【Scikit-learn】【模型预处理-2-数据整理】数据标准化调整:把数据调整为标准正态分布
1.标准正态分布概念详细的概念可以www.baidu.com,或者看以前写的文章。标准正态分布又称为u分布,是以0为均数、以1为标准差的正态分布,记为N(0,1)。如下图,绿色绿色就代表了标准正态分布:2.数据标准化调整2.1简介许多机器学习算法在具有不同范围特征的数据中呈现不同的学习效果。SVM(Support Vector Machine,支持向量机)在没有标准化调整过的数据中表现很差,因为可...
2018-06-05 16:59:51 1699
原创 【Scikit-learn】【模型预处理-1-数据获取】获取样本数据(iris/boston/digits等数据集) + 创建样本数据(回归/分类/聚类等数据集)
1.从外部源获取样本数据2.创建样本数据(end)
2018-06-05 14:07:45 4953
原创 【Scikit-learn】【入门】简介 + Scikit-learn六大功能
1.简介(1)SciPy,SciPy是一个开源的基于Python的科学计算工具包。(2)Scikits,基于SciPy针对不同的应用领域发展出众多的分支版本,他们统一称为Scikits,即SciPy工具包的意思(3)Scikit-learn,是针对机器学习出的一个分支版本(开源框架),就是Scikit-learn,这就是Scikit-learn和SciPy的关系。Scikit-learn需要Num...
2018-06-05 10:11:27 6935
原创 【Scikit-learn】Scikit-learn开篇
开启scikit-learn的总结征程,给自己打打气,加油!scikit-learn优秀链接:[1]scikit-learn中文学习网站:http://cwiki.apachecn.org/pages/viewpage.action?pageId=10813673[2]scikit-learn中文学习视频网站:http://i.youku.com/apachecn...
2018-06-04 17:29:40 302
原创 【机器学习】【层次聚类算法-2】层次聚类算法(Hierarchical Clustering Alg)的Python实现
别看层次聚类算法简单,但是实现起来在数据结构方面还需要思考一番,不是那么轻而易举的确定数据结构,实现过的人应该知道的。1.Code# -*- coding: utf-8 -*-"""@author: 蔚蓝的天空TomTalk is cheap, show me the codeAim: 实现层次聚类算法Hierarchical Clustering Alg"""import nump...
2018-06-01 17:56:58 4080 1
原创 【再回首Python之美】【基础测试题-1】Python基础知识例题
Python基础知识测试题# -*- coding: utf-8 -*-"""@author: 蔚蓝的天空Tom"""def ex0(): '''形参会被函数修改内容''' def addItem(listParam): listParam += [5,6,7,8] mylist = [1,2,3,4] addItem(mylist) ...
2018-06-01 16:40:36 624
原创 【再回首Python之美】【数据结构-二叉树】如何实现存储[动态创建]二叉树 For 层次聚类算法Hierarchical Clustering Alg
在实现层次聚类算法时,最后的结果是一个二叉树,如何实现这个二叉树的存储呢?这篇文章实现并记录一下。1.一个二叉树2.用列表存储二叉树tree=['A', #root ['B',#左子树 ['D',[],[]], ['E',[],[]]], ['C',#右子树 ['F',[],[]], []] ]3.用列表...
2018-06-01 10:56:39 459
原创 【再回首Python之美】【矩阵】求矩阵中最大元素/最小元素的行列坐标 For 层次聚类算法Hierarchical Clustering Alg
求多维矩阵中最小元素的行列坐标,这个在层次聚类算法中用到,这里实现记录一下。1.简介矩阵M: [[1 3 2] [2 6 0] [9 8 5]]最大元素是9,对应的行列坐标为(2,0)最小元素是0,对应的行列坐标是(1,2)现在任务就是:输入M,输出最小/大元素的行列坐标,代码如下所示:2.code# -*- coding: utf-8 -*-"""@author: 蔚蓝的天空Tom:...
2018-06-01 10:28:13 4749 1
转载 【机器学习】【层次聚类算法-1】HCA(Hierarchical Clustering Alg)的原理讲解 + 示例展示数学求解过程
1.聚类系列算---层次聚类算法2.层次聚类算法的计算原理3.一个示例展示层次聚类算法的数学计算过程参考文献:[1]http://bluewhale.cc/2016-04-19/hierarchical-clustering.html[2]https://www.cnblogs.com/weimiaomiao/p/4318244.html[3]https://www.cnblogs.com/tia...
2018-05-31 22:33:41 13058
原创 【机器学习】【ICA-3】ICA独立成分分析的Python实现
1.ICA独立成分分析的详解2.ICA独立成分分析的Python实现2.1代码2.2运行结果(end)
2018-05-29 19:37:07 6673 10
原创 【机器学习】【ICA-2】ICA独立成分分析的原理 + ICA前的预处理(中心化+漂白)
1.鸡尾酒宴会2.ICA概念和目的3.ICA计算过程的原理推理4.实例展示ICA的求解过程(end)
2018-05-29 19:35:41 14400 8
原创 【机器学习】【ICA-1】概率统计/代数知识详解:高斯分布、概率密度函数、累积分布函数、联合分布函数、复合函数的概率密度函数、行列式求导等
1.ICA概念2.ICA不处理服从高斯分布的样本集3.概率密度函数4.复合函数的概率密度函数5.累积分布函数/分布函数6.联合分布7.行列式8.代数余子式(end)
2018-05-29 19:32:01 9036
原创 【机器学习】【线性代数 for PCA】矩阵与对角阵相似、 一般矩阵的相似对角化、实对称矩阵的相似对角化
Note:PCA主成分分析用到实对称阵的相似对角化。1.对角阵概念2.矩阵与对角阵相似的条件3.一般矩阵的相似对角化4.实对称矩阵的相似对角化5.协方差矩阵的相似对角化(end)...
2018-05-28 22:24:51 24803
原创 【机器学习】【线性代数】协方差+协方差矩阵的多种求解方法的Python实现(公式法 + 样本集中心化方法 + np.cov()法等)
1.协方差和协方差矩阵的概念公式1.1协方差公式1.2协方差矩阵公式有数据集={X,Y,Z},是三维度的数据,即此此数据集中的样例有3个特征2.协方差的多种求解Python实现2.1代码2.2运行结果3.协方差矩阵的多种求解Python实现人肉出品,代码详见如下:3.1代码# -*- coding: utf-8 -*-"""@author: 蔚蓝的天空TomTalk is cheap, sh...
2018-05-28 19:57:17 11194 2
原创 【机器学习】【线性代数】均值,无偏估计,总体/样本方差,样本标准差,矩阵中心化/标准化、协方差,正/不/负相关等,协方差矩阵
1.总体方差2.样本方差3.协方差(end)
2018-05-28 09:59:03 6865 1
原创 【机器学习】【线性代数】正交基、标准正交基、正交矩阵,正交变换等数学知识点
1.标准正交基2.正交矩阵3.正交变换4.正交矩阵 举例5.正交变换 举例(end)
2018-05-28 09:30:08 33902
原创 【机器学习】【PCA-2】PCA主成分分析的降维的Python实现 + 代码讲解
1.PCA主成分分析原理2.PCA降维求解步骤3.PCA降维的Python实现(Release版本)3.1代码3.2运行结果4.PCA降维的Python实现(Debug版本)4.1代码4.2运行结果(end)
2018-05-26 00:03:34 3133 2
原创 【机器学习】【PCA-1】PCA基本原理和原理推导 + PCA计算步骤讲解 + PCA实例展示数学求解过程
1.PCA主成分分析原理2.PCA流程3.PCA实例讲解(end)
2018-05-26 00:01:07 30316 3
原创 【机器学习】【SVD-5】SVD在推荐(策略:TopK)系统中的应用简介 + 示例展示 + Python代码实现
SVD在推荐(策略:TopK)系统中的应用简介 + 示例展示 + Python代码实现
2018-05-25 17:30:44 1467 1
原创 【机器学习】【SVD-4】SVD在推荐(策略:TopOne)系统中的应用简介 + 示例展示 + Python代码实现
1.SVD降维的应用简介2.降维示例展示3.Python代码实现参考文献:[1][机器学习笔记]奇异值分解SVD简介及其在推荐系统中的简单应用[2]【机器学习】推荐系统、SVD分解降维[3]SVD在推荐系统中的应用[4]SVD Recommendation System in Ruby[5]矩阵特征值分解与奇异值分解含义解析及应用[6]We Recommend a Singular Value D...
2018-05-25 13:46:54 782
原创 【机器学习】【SVD-3】SVD降维的应用简介 + 降维示例展示 + Python代码实现
1.SVD奇异值分解的基本原理介绍参见前面博客:SVD奇异值分解的基本原理介绍2.Python代码基于SVD的商品推荐系统的Python实现,代码如下所示:(end)
2018-05-24 18:05:46 11229 11
jenkins_home_hpi_1127_2.part7.rar
2019-11-27
jenkins_home_hpi_1127_2.part6.rar
2019-11-27
【机器学习】【决策树】ID3算法,详解+Python代码实现
2018-04-05
【机器学习】【决策树】自己动手用python实现样本集的裁剪,新样本集以供计算子决策树的最优根节点
2018-04-03
【机器学习】用相亲样本数据集详解条件熵的计算过程
2018-04-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人