如果有一张大表,表中的数据有几百万、几千万甚至上亿,要实现实时查询,查询的结果要在十秒钟之内出来,怎么办?如何做优化?
本人现在做的项目中,有个表的数据超过1千万行,超过3G的数据。现在需要对表中的数据进行查询统计,之前由于没做优化,导致此表的查询效率非常低下,让使用者非常苦恼,于是本人参与了此表的优化。
举个类似的例子,比如表中的结构如下,现在要统计某一天出生的人口数,或者统计某一城市的人口...
分类:
其他好文 时间:
2014-11-02 18:18:22
阅读次数:
232
输入一个字符串,求出其中最长的回文子串。子串的含义是:在原串中连续出现的字符串片段。回文的含义是:正着看和倒着看相同。如abba和yyxyy。在判断时,应该忽略所有标点符号和空格,且忽略大小写,但输出应保持原样(在回文串的首部和尾部不要输出多余字符)。输入字符串长度不超过5000,且占据单独的一行。应该输出最长的回文串,如果有多个,输出起始位置最靠左的。
样例输入:Confuciuss ...
分类:
编程语言 时间:
2014-11-02 18:19:12
阅读次数:
168
做游戏我还是习惯用一个导演类来控制游戏的进程,比如游戏的开始和结束,游戏的AI的产生,游戏的地图的绘制等等都放置在这么一个导演类里面。
然后这个导演类我把它放在MainCamera里面,作为它的组件。
首先在Start里面,需要初始化一些游戏的数据,例如读取地图,初始化AI等
void Start()
{
//初始化数据
m_iAICurTankCount...
分类:
编程语言 时间:
2014-11-02 18:18:12
阅读次数:
274
区间动态规划问题一般都是考虑,对于每段区间,他们的最优值都
是由几段更小区间的最优值得到,是分治思想的一种应用,将一个区间
问题不断划分更小的区间直至一个元素组成的区间,枚举他们的组合
,求合并后的最优值。设F[i,j](1
最小区间F[i,i]=0(一个数字无法合并,∴代价为0)
每次用变量k(i
For p:=1 to n do // p是区间长度,作为阶段。
...
分类:
其他好文 时间:
2014-11-02 18:18:01
阅读次数:
152
在之前的一篇博文中(Linux下mpi环境配置与执行步骤(Ubuntu为例) ),有讨论过如何使用MPI在两个不同的机器上执行程序,在那篇博文中使用了超级用户权限。不幸的是,有些情况下,我们不能拥有操作系统的超级用户权限,导致我们不能修改除用户目录以外的目录,因此写这篇博文讨论如何使用普通用户来实现mpi程序的编译和双机器执行。如果知道了如果双机器执行,多机器道理是相通的。...
分类:
其他好文 时间:
2014-11-02 18:16:50
阅读次数:
175
使用抽取方法,虽然道理十分简单,但实际操作起来却并不是那么容易的。完成抽取方法最大的困难,就是如何处理抽取函数与原函数的数据交换。如同将一颗大树从土壤里拔出来,盘根错节的根茎,那是剪不断理还乱。当代码还没有被抽取出来之前,它们与其它程序都是在一个函数的内部,因此各个代码段可以毫无顾忌地相互交互数据。但当我们将代码从原函数中抽取出来时,抽取出来的代码与原函数中的代码就形成了一道墙,要交换的数据只能通过参数与返回值进行交互,这将给我们带来诸多麻烦。...
分类:
其他好文 时间:
2014-11-02 18:18:41
阅读次数:
243
二叉树递归遍历可谓是学过数据结构的同仁都能想一下就能写出来,但在应聘过程我们常常遇到的是写出一个二叉树非递归遍历函数,接着上篇文章写二叉树的非递归遍历,先难后易,一步一步的来.
先上代码:
#include "binarytree.h"
#include
#include
#ifndef RECU
#warning("RECU is not defined")
/**
*前序遍历...
分类:
其他好文 时间:
2014-11-02 18:18:36
阅读次数:
232
题意:一个树上建两个加油站,使得所有点到达其最近加油站的最大距离最小。
解法:二分答案。关键时二分时候,要最合理话布局两个点的位置,做法是处理出来树的直径,然后在直径两端分别向中间移动二分的x步的两个点布下加油站。贪心可以证明正确性;
代码:/******************************************************
* @author:xiefuba...
分类:
其他好文 时间:
2014-11-02 18:17:30
阅读次数:
206
/*
题意:给你一些冰岛。公共海域和浮冰,冰岛可以隔开两个公共海域,浮冰无影响
求选尽可能多的选一些公共海域点每行每列仅能选一个。
限制条件:冰山可以隔开这个限制条件。即*#*可以选两个
预处理:
*****
**#*#
***** 可以按行转化
*****
**#oo
ooo*#
*****
按列转化
***0**o
**ooooo
oooo*oo
**o**o*
因为每行每列顶多可...
分类:
其他好文 时间:
2014-11-02 18:18:15
阅读次数:
157
题意:问随机生成一个长度为m(m
解法:dp+kmp优化。ans[i][j]表示i长度,走到了s的j位置的概率,当然这是在i之前没有出现s的前提下(在状态转移时候已经保证了这一点);然后最后的概率就是1-m长度的串分别最后出现s的概率之和。
代码:/******************************************************
* @author:xief...
分类:
其他好文 时间:
2014-11-02 18:15:58
阅读次数:
146
1.Iframe不显示边框:frameborder=0
2.Iframe不显示横向滚动条:在iframe所指向的页面加入:
style>
html{overflow-x:hidden;}
style>
3.Iframe动态刷新:在父页面中:iframeId.window.location.replace(url);//会请求url
4.Iframe父页面调用子页面的方法:...
题意:给一个多边形(有可能是凹多边形)。问有多少种能够使得它稳定放置的方式。当然稳定的原则就是重心做垂线在支撑点之内。
解法:因为有可能是凹多边形,所以先求出多边形的凸包,这是在放置时候会接触地面的所有点。然后将重心与每天凸边判断是否稳定;
代码:/******************************************************
* @author:...
分类:
其他好文 时间:
2014-11-02 18:17:47
阅读次数:
250
1、Jni不在赘述,翻看前面博客
2、直接上代码
1)Java层,直接加在AppActivity.java中
public class AppActivity extends Cocos2dxActivity{
public static Activity acty;
protected void onCreate(Bundle savedInstanceState)
{
supe...
分类:
移动开发 时间:
2014-11-02 18:15:04
阅读次数:
203
使用requireJS加载模块的时候,有时候会碰到如下的错误:
Uncaught Error: Module name "module1" has not been loaded yet for context: _. Use require([])。可以看到使用define()定义模块的时候,如果依赖的模块比较少,那么可以使用标准方式;如果依赖的模块很多,那么可以使用方式1或者方式2来解决。很显然,使用require()加载模块的时候,也存在和define()一样的问题。经过我的试验:使用方式2也是可以的...
分类:
Web程序 时间:
2014-11-02 18:16:05
阅读次数:
1383