小编AYR*_*AYR的帖子

正确性证明:图论中树的直径算法

为了找到树的直径,我可以从树中获取任何节点,执行BFS以找到距离它最远的节点,然后在该节点上执行BFS.与第二个BFS的最大距离将产生直径.

不过我不知道如何证明这一点?我尝试过对节点数量的归纳,但是有太多的情况.

任何想法将不胜感激......

algorithm tree graph-theory proof-of-correctness

23
推荐指数
2
解决办法
1万
查看次数

如何查看物化视图的原始脚本?

我有兴趣将物化视图从一个数据库移动到另一个数据库,无论如何,我还需要更改其中一个列.如何查看构建MV的原始脚本?我正在运行TOAD,但似乎无法找到原始脚本.

提前致谢!

sql oracle materialized view

11
推荐指数
4
解决办法
5万
查看次数

Airflow:为什么 DAG 任务运行过时的 DAG 代码?

我正在 GCP 上通过 Cloud Composer (1.11.1) 运行 Airflow (1.10.9)。每当我更新 DAG 的代码时,我都可以在 Airflow GUI 中看到更新后的代码已刷新,但至少有 10 分钟 DAG 的任务仍然运行旧代码。

有几个问题:

  1. 为什么会出现这种延迟?可以减少这种延迟吗?
  2. 我如何知道任务的代码何时已更新以确保没有人运行旧代码?

airflow google-cloud-composer

5
推荐指数
0
解决办法
993
查看次数

有比rand()更好的功能吗?

我有一个程序,在C中,它使用0-999的随机数创建一个1000个整数的数组,然后在该数组上执行某种算法.为了测试算法的运行时间,我尝试运行程序10000次,但每次运行它时,数组对于一些数组是相同的,然后它会改变.我已经使用该srand()函数以当前时间提供种子,但它仍然无济于事.

是否有替代解决方案rand()或解决方法?我的功能是:

void getarray(int *ptr1, int size, int option){
    int n;
    srand(time(NULL));
    for(n=0; n<size; n++)
        *(ptr1+n) = *(ptr2+n)= rand()%1000; 
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

c random srand

1
推荐指数
2
解决办法
3265
查看次数

如何在Oracle SQL中将表从列转置为行

我在sql中有一个表,该表具有许多列,每列具有相同类型的数据。我想将表的列转置为行,以便所有数据都出现在1列中。我正在讨论的表类型的示例:

ID    DATE    TEST_1    TEST_2    TEST_3
----------------------------------------
1     1jan12    98        66       77
2     2jan12    75        89       72
Run Code Online (Sandbox Code Playgroud)

进入:

ID    DATE        TEST       SCORE
-----------------------------------
1     1jan12      TEST_1      98
1     1jan12      TEST_2      66
1     1jan12      TEST_3      77
2     2jan12      TEST_1      75
2     2jan12      TEST_2      89
2     2jan12      TEST_3      72
Run Code Online (Sandbox Code Playgroud)

预先感谢您的任何建议或指示!

sql oracle transpose

0
推荐指数
1
解决办法
2万
查看次数