我正在尝试用这样的指针实现一个邻接矩阵:
public cartons$: BehaviorSubject<ICartonTrackDetail[]>;
this.cartons$ = this.cartonService.getCartonsObservable();
我正在使用它来解决图像分割问题,使用Edmond的Karp和BFS,因此我在Matrix大小中添加+1作为算法的源/接收器。我通过从+1位置开始的矩阵运行来逐个填充输入的垂直和水平链接值。
当运行矩阵用链接的权重填充块时,我遇到了分段错误错误:
Type 'Observable<ICartonTrackDetail[]>' is not assignable to type 'BehaviorSubject<ICartonTrackDetail[]>'.
Property '_value' is missing in type 'Observable<ICartonTrackDetail[]>'.```
我的算法正在运行,但是我将Adj_Matrix的int **Adj_Matrix;
int** create_Mat_adj(int lines, int columns)
{
int **Adj_Matrix = new int*[lines];
int *Adj_Matrix_block = new int[lines * columns+1];
for (int i = 1; i < columns+1; ++i, Adj_Matrix_block += columns+1 ) {
Adj_Matrix[0]= new int; // sink or source for img segmentation
Adj_Matrix[i] = Adj_Matrix_block;
}
return Adj_Matrix;
}
void delete_Mat_adj(int **i)
{
delete [] i[0];
delete [] i;
}
的实现更改为使用指针,因为在计算巨大的矩阵(> 800x800)时遇到了内存问题。