
算法/代码优化
CV_ML_DP
赏cv,ml,dp之美,创其价值
展开
-
简单高效删除数组成员(非稳定性)的代码
目的:实现一个高效代码实现简单的删除数组中的需要删除的成员的功能代码代码如下所示:/* 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 · 604 阅读 · 0 评论 -
【性能优化】如何实现:c/c++整个项目工程使用一个全局变量
如果工程中存在malloc/free等频繁动态分配和释放内存的情况,一般优化思路是:方法1:加内存池方法2:使用全局buf 方法1的优点:众所周知,不详细说了。方法2使用场合:整个工程运行过程中,动态分配的内存大小有规律性且有最大个数。可以在工程起始阶段就分配足够的全局buf。 内存池前面文章有实现代码,这里说下支撑方法2实现的主要技术:那就是全局变量的使用方法。S...原创 2018-09-22 13:27:28 · 5905 阅读 · 2 评论 -
【性能优化】遍历数组:用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 · 1172 阅读 · 0 评论 -
【性能优化】取模运算: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 · 2669 阅读 · 8 评论