bullet 作为开源实时物理引擎,在速度和性能上有着优秀的表现。本文先后分析了bullet的内存对齐、动态数组,然后分析了std::ordered_map的内存布局,最后分析了btHashMap内存布局的独特之处,并解释了为什么这种设计有着优秀的性能表现。PS:对算法、数据结构、内存管理、高性能感兴趣的同学,此文值绝对得一看。...
分类:
其他好文 时间:
2014-11-09 15:20:57
阅读次数:
340
题目链接:点击打开链接
题意:
离散的一维坐标轴
开始人在0点,每次有p概率向→跳一格, 1-p概率跳两格。
下面n个数表示在这些格子上有地雷,踩到就屎。
问安全通过的概率。
思路:
若不考虑地雷,跳到某一格的概率就是dp[i] = dp[i-1]*p + dp[i-2]*(1-p)
很容易想到转移方程: dp[i]=p*dp[i-1]+(1-p)*dp[i-2];...
分类:
其他好文 时间:
2014-11-09 15:22:04
阅读次数:
159
题意:
#pragma comment(linker, "/STACK:1024000000,1024000000")
#include
#include
#include
#include
template
inline bool rd(T &ret) {
char c; int sgn;
if (c = getchar(), c == EOF) return 0...
分类:
其他好文 时间:
2014-11-09 15:19:46
阅读次数:
242
题意:
给定n个点的带边权树Q个询问。
下面n-1行给出树
下面Q行每行一个数字表示询问。
首先求出dp[N] :dp[i]表示i点距离树上最远点的距离
询问u, 表示求出 dp 数组中最长的连续序列使得序列中最大值-最小值
思路:
求dp数组就是求个树的直径然后dfs一下。
对于每个询问,可以用一个单调队列维护一下。O(n)的回答。
#include
#includ...
分类:
其他好文 时间:
2014-11-09 15:18:46
阅读次数:
271
web工程在新建时,对于编码的选择是至关重要的。因为到了后面,随着项目文件的增多,发现编码不对再进行修改时,相当麻烦。虽然有一些eclipse的批量修改编码插件工具。
iso8859_1是不支持的中文,只是由于历史原因比如旧浏览器不支持所以有些工具默认是它,现在大多选择utf-8或者gbk。这两者都支持中文,应该选择哪个?gbk专门为中文而设,如果你是一个中文网站,并且只在中国访问;又或者只是一个管理系统在中国企业内部使用,选择gbk没有问题。但是如果需要国外访问,那最好还是utf-8,因为国外的gbk需...
分类:
其他好文 时间:
2014-11-09 15:19:52
阅读次数:
154
利用jxl读取excel合并的单元格的一个小例子...
分类:
其他好文 时间:
2014-11-09 15:18:52
阅读次数:
189
继承中参数传递及调用顺序
一、简单派生类的构造函数传参
C++语言的继承特性,指子类可以继承父类的属性和行为,并可以重新定义或添加新的属性和行为。父类中为private型的属性和行为虽然被继承,但是子类中仍不能访问。在继承机制下,构造函数是不能被继承的,所以基类构造函数的参数要由子类构造函数传!
单一继承的子类构造函数的声明(.h中)形式为:
派生类构造函数名(参数总表) ();
单...
分类:
其他好文 时间:
2014-11-09 15:19:43
阅读次数:
178
一、线性相关性
什么情况下,向量X1,X2,……,Xn是线性无关的?
答:当向量X1,X2,……,Xn的线性组合(线性组合时系数不能全为0)不为零向量时,它们是线性无关的。即方程...
分类:
其他好文 时间:
2014-11-09 15:18:53
阅读次数:
120
一开始采用递归写,TLE。
class Solution {
public:
bool flag;
int n,m;
void dfs(int id0,const char *s,int id1,const char *p){
if(flag)return;
if(id0>=n){
if(id1>=m)flag=1;
else{
int j=0;
whi...
分类:
其他好文 时间:
2014-11-09 15:18:20
阅读次数:
225
题意:
给定n,
下面是1-n的排列。
下面一个二进制子串。
先按给定的排列建出二叉树。
然后遍历树(根->左子树->根->右子树->根)
遍历这个节点时 若权值为奇数入栈一个1,若为偶数入栈一个0
得到一个母串。
问母串中出现了几次子串。
思路:
先是建树得到母串,然后求子串个数就是裸的KMP。
建树就是找个规律,然后用线段树维护一下输入的排列
#include
#...
分类:
其他好文 时间:
2014-11-09 15:18:00
阅读次数:
258
UVA10006 - Carmichael Numbers(筛选构造素数表+快速幂)
题目链接
题目大意:如果有一个合数,然后它满足任意大于1小于n的整数a, 满足a^n%n = a;这样的合数叫做Carmichael Numbers。题目给你n,然你判断是不是Carmichael Numbers。
解题思路:首先用筛选法构造素数表,判断n是否是合数,然后在用快速幂求a^2-a^...
分类:
其他好文 时间:
2014-11-09 15:18:17
阅读次数:
180
本教程是关于使用NESASM汇编器为任天堂娱乐系统(NES, Nintendo Entertainment System)编程的。该教程由浅入深,简化了NES汇编学习过程。在进一步尝试前你几乎必须了解另一种汇编语言,因为本文假设你(哪怕一丁点)基本汇编常识是具备的。例如了解GBA或者Intel x86汇编将对理解基础有很大帮助。祝你在学习NES汇编编程的旅途中一切顺利!...
分类:
其他好文 时间:
2014-11-09 15:18:38
阅读次数:
174
1
Bootstrap是移动设备优先的。
通过添加.img-responsive class可以让Bootstrap 3中的图片对响应式布局的支持更友好。
使用.col-md-offset-*可以将列偏移到右侧。...
分类:
其他好文 时间:
2014-11-09 15:17:35
阅读次数:
152
一、UML图
二、包含的角色
简单工厂模式包含三个角色:(1)工厂类Factory(2)抽象产品类AbstractProduct(3)具体产品类ConcreteProduct。
(1)Factory:工厂类是用来制造产品的。因此,在Factory中有一个用于制造产品的Create函数或者Generate函数之类的函数。这个函数能够根据“标识符”的不同生成不同的ConcreteProd...
分类:
其他好文 时间:
2014-11-09 15:18:02
阅读次数:
146
汇集了spark所支持的Transformation和Action...
分类:
其他好文 时间:
2014-11-09 15:15:51
阅读次数:
149
UVA106 - Fermat vs. Pythagoras(素勾股数)
题目链接
题目大意:给你一个数n,勾股数三元组(x,y,z)的定义:满足x
解题思路:先找出所有的素勾股数(x, y, z) ,那么便可以通过(kx, ky, kz)得到不是素勾股数的勾股数。接着要换种方式构造素勾股数,公式:x = m^2 - n^2; y = 2?m?n;
z = m^2 + n^...
分类:
其他好文 时间:
2014-11-09 15:16:02
阅读次数:
150
相信大家对NULL不会很陌生,NULL 是一个标准规定的宏定义,用来表示空指针常量,当一个指针变量被赋值为NULL时,表示它不再指向任何有效地址,无法在访问任何数据。在VS2012库文件stdio.h中有如下定义:1 #ifdef __cplusplus2 #define NULL 03 ...
分类:
其他好文 时间:
2014-11-09 15:14:59
阅读次数:
162