题意:给定一棵树,求出树上的一点,使得树上的全部点到该点的距离之和最小。思路:暴力显然是O(N^2)等死对吧。我们首先将无根树转化为有根树,然后一边dfs求出f[i],size[i].f[i]表示以i为根的子树中全部的点到i的距离之和,size[i]表示以i为根的子树的点数。以下開始脑洞大开:如今对...
分类:
其他好文 时间:
2015-05-08 23:35:46
阅读次数:
133
我们为什么用触发器呢?
下面摘自部分官方文档:Automatically generate virtual column values(自动生成虚拟列值)
Log events(日志事件)Gather
statistics on table access(收集统计数据表的访问)
Modify table data when DML statements are issued agains...
分类:
其他好文 时间:
2015-04-20 09:39:58
阅读次数:
200
标题的意思是Java NIO的分散集中
Java NIO带有内置的分散收集的支持。分散收集的概念主要用于通道的读写。
对一个通道的分散读取就是将数据读到多个buffer中,因此,通道将数据分散到多个buffer中。
对一个通道的集中写就是将数据从多个buffer中写到一个通道中,因此,通道从多个buffer将数据收集到一个通道中。
分散收集经常用于对传输数据分开处理的场景。比如,一条消息由h...
分类:
编程语言 时间:
2015-03-17 15:53:01
阅读次数:
188
大数据量表的维护原则 1.如果此表经常CRUD,最好的办法是定期收集统计信息传递给oracle优化器,提高性能。例如dbms_stats.gather_table_stats命令。 可以做在ETL中,定期执行。 2.考虑使用业务常用字段来进行分区,例如时间或地域等。以提高表查询的效率。 视图创建原则...
分类:
数据库 时间:
2015-02-19 10:44:46
阅读次数:
174
对Like,有两种形式的写法是按照数据总量的5%评估。
SQL> drop table test purge;
SQL> create table test as select * from dba_objects;
SQL> exec dbms_stats.gather_table_stats(user,'test');
SQL> select count(1) from test;...
分类:
数据库 时间:
2015-02-13 18:33:43
阅读次数:
201
select /*+ gather_plan_statistics */ distinct dname, decode( d.deptno, 10, (select count(*) from scott.emp where deptno = 10), 20, (select count...
分类:
其他好文 时间:
2015-01-12 16:26:33
阅读次数:
153
Java NIO开始支持scatter/gather,scatter/gather用于描述从Channel(译者注:Channel在中文经常翻译为通道)中读取或者写入到Channel的操作。
分散(scatter)从Channel中读取是指在读操作时将读取的数据写入多个buffer中。因此,Channel将从Channel中读取的数据“分散(scatter)”到多个Buffer中。
聚集(ga...
分类:
编程语言 时间:
2015-01-04 19:20:07
阅读次数:
189
查询优化手段和gather_plan_statistics hint:
在10g以后我们可以通过利用gather_plan_statistics提示来了解更多的SQL执行统计信息,具体使用方法如下:
如果在statistics_level参数设置为ALL,或者执行的sql使用了gather_plan_statistics hint,则在sql执行后,会在v$sql_plan_statistic...
分类:
数据库 时间:
2014-12-31 13:10:45
阅读次数:
236
在Oracle中,有时候在执行计划中看到sort关键字,就有人认为是做了排序,其实不一定。可以用下面的方法实验:
drop table test purge;
create table test as select * from dba_objects;
exec dbms_stats.gather_table_stats(user,'test');
select /*+gg_test...
分类:
数据库 时间:
2014-12-26 11:14:06
阅读次数:
297